]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* lily/note-head.cc: Fixed programming_error message.
[lilypond.git] / ChangeLog
1 2006-10-06  Jürgen Reuter  <reuter@ipd.uka.de>
2
3         * lily/note-head.cc: Fixed programming_error message.
4
5 2006-10-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
6
7         * scm/define-grobs.scm (pure-conversion): move pure-callback
8         further into body.
9
10         * scm/script.scm (default-script-alist): set avoid-slur for turn,
11         marcato, stopped, thumb.
12
13 2006-10-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
14
15         * lily/completion-note-heads-engraver.cc (process_music): don't
16         skimp on memory usage.
17
18         * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
19         stems too. Fixes #5
20
21         * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
22         parenthesis item. This fixes premature Y-extent triggering. Fixes
23         issue #95. 
24  
25         * VERSION (PATCH_LEVEL): bump version.
26
27 2006-10-04  Graham Percival  <gpermus@gmail.com>
28
29         * Documentation/user/advanced-notation.itely: added
30         info about instrument names for piano or other contexts,
31         thanks Marcus!
32
33 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
34
35         * mf/feta-bolletjes.mf (solfa_quarter_width): use
36         solfa_base_notewidth as unit for non-DO-notes too.
37
38         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
39
40         * VERSION: release 2.9.21
41
42         * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
43         override.
44
45 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
46
47         * python/lilylib.py (progress): Minor fix.
48
49 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
50
51         * lily/note-name-engraver.cc: doc engraver.
52
53         * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
54
55         * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
56
57         * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
58         by callback.
59
60         * lily/stem-engraver.cc (make_stem): don't set duration-log
61
62         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
63         write snippet-names binary.
64
65         * python/lilylib.py (system): use os.system for mingw32
66
67         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
68         to $PATH.
69
70         * scm/backend-library.scm: update email address.
71
72         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
73         example.
74
75         * scm/define-grobs.scm (all-grob-descriptions): use callback to
76         calc dot count.
77
78         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
79         handle dot creation separately.
80
81         * lily/tab-note-heads-engraver.cc (process_music): idem.
82
83         * lily/drum-note-engraver.cc (process_music): idem.
84
85         * lily/note-heads-engraver.cc (process_music): idem.
86
87         * lily/rest-engraver.cc: don't set duration-log.
88
89         * scm/output-lib.scm (string-number::calc-text): new function.
90         (note-head::calc-duration-log): new function.
91
92         * lily/fingering-engraver.cc (make_script): remove 'text setting.
93
94         * scm/output-lib.scm (fingering::calc-text): new function.
95
96 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
97
98         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
99          and include-eps-font -> include-eps-fonts
100
101 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
102
103         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
104
105         * lily/timing-translator.cc: list properties.
106         (start_translation_timestep): update internalBarNumber too.
107
108         * scm/define-context-properties.scm
109         (all-user-translation-properties): add internalBarNumber.
110
111         * input/regression/spacing-no-note.ly: new file.
112
113         * buildscripts/output-distance.py (link_file): verbosity for OSError.
114
115         * lily/book.cc: #include cleanup.
116
117         * lily/include/lily-guile-macros.hh: add assert to
118         scm_or_str2symbol(SCM).
119
120         * VERSION (PATCH_LEVEL): bump version.
121
122         * lily/spacing-spanner.cc (musical_column_spacing): handle
123         musical->nonmusical spacing case, where there is no spacing
124         wish. Fixes issue #61.
125
126         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
127         (pango_item_string_stencil): use logical rect horizontally (to
128         preserve spaces), ink_rect vertically (for time signatures).
129
130         * lily/font-metric.cc (word_stencil): new interface function
131
132         * input/regression/utf-8-mixed-text.ly: new file.
133
134         * lily/percent-repeat-engraver.cc (listen_percent): remove
135         spurious warning.
136
137         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
138         non-dynamic scripts. Fixes #30.
139
140         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
141
142         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
143
144         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
145         SCM_UNDEFINED for non-existent data.
146
147         * lily/side-position-interface.cc (general_side_position): allow
148         optional current_offset argument for chaining, so combinations of side-position
149         and outside slur callback don't add up.  Fixes issue #92.
150
151         * lily/pango-font.cc (pango_item_string_stencil): use
152         logical_rect. This prevents spaces after words from disappearing,
153         issue #72.
154         
155         * VERSION: release 2.9.20
156
157 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
158
159         * scm/define-grob-properties.scm (all-user-grob-properties):
160         mention stencil as user settable.
161
162 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
163
164         * Documentation/user/page.itely (Page formatting): 
165         document auto-first-page-number
166
167         * lily/page-breaking.cc (find_chunks_and_breaks): 
168         * lily/paper-score.cc (calc_breaking): Follow changes to the
169         Constrained_breaking interface
170
171         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
172         here backwards, as an optimisation
173         (initialize): new function; move most of the code in resize () here
174         (combine_demerits): cache ragged_right_
175         (Constrained_breaking): constructor now takes the Paper_score
176
177 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
178         
179         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
180         avoid parser lookahead for 0-ary functions.
181
182         * lily/translator.cc: Extract event classes from
183         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
184
185 2006-10-02  Heikki Junes  <hjunes@gmail.com>
186
187         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
188         KBabel fix tool.
189
190 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
191
192         * scm/layout-page-layout.scm (page-breaking-wrapper): new
193         function. Call the page breaking function selected in the
194         `page-breaking' \paper variable, then the post processing function
195         chosen using the `page-post-process' \paper variable.
196         (line-height): new function. Return the height of a system.
197         (line-minimum-position-on-page): new function. Return the position
198         of a system on page (using the previous line position), only
199         considering between system padding.
200         (stretchable-line?): new function. Says whether a line can be
201         stretched (ie. is not a title nor a single staff system).
202         (page-maximum-space-left): new function. Computes space left on a
203         page, when all systems are separated by their padding.
204
205         * lily/page-breaking.cc (breaking::make_pages): Move page post
206         processing function call to page breaking wrapper (common to all
207         page breakers).
208
209         * lily/paper-book.cc (book::pages): call the page breaking
210         wrapper, instead of the page breaker directly
211
212         * ly/paper-defaults.ly: Add \paper variables for page breaking
213         wrapper and page post processing function. Make
214         `write-page-layout' value depend on the 'dump-tweaks option. Add a
215         `system-maximum-stretch-procedure' variable for holding a function
216         computing the maximum stretch a system allows.
217
218         * scm/layout-page-dump.scm (write-page-breaks): computes the
219         stretch to apply to systems on a page to minimize left
220         space. Dump this stretch length.
221
222         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
223         the system-stretch property of the tweak data to stretch the
224         system.
225         (includePageLayoutFile): Void function which includes the
226         generated page-layout file if it exists and if the page layout
227         dumping is not asked.
228         (scoreTweak): if the score tweak named by the argument exists,
229         return it.
230
231 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
232
233         * lily/page-spacing.cc (compress_lines, uncompress_solution):
234         handle correctly the case where there are multiple \noPageBreaks
235         in a row.
236
237 2006-09-30  Laura Conrad <lconrad@laymusic.org>
238
239         * abc2ly.py adds segno (S) and Coda (O) to articulations.
240         
241         * abc2ly.py fix so that entering " -- " will translate to a -- in
242         the lilypond instead of a " - - "
243         
244 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
245
246         * lily/align-interface.cc: fix typo
247
248         * lily/dynamic-text-spanner.cc (print): Add a special case for
249         trill spanner right sides. 
250
251         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
252
253         * lily/align-interface.cc (get_extents_aligned_translates): add
254         support for padding variable.
255
256         * lily/break-align-interface.cc (self_align_callback): oops: use
257         loop variable in guard.
258
259         * input/regression/repeat-percent-grace.ly: new file.
260
261         * lily/percent-repeat-engraver.cc (start_translation_timestep):
262         remember first currentCommandColumn of a grace run. Fixes issue 70.
263
264         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
265         move class definition to CC file.
266
267         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
268
269         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
270         measure-long  repeats.
271
272         * flower/include/international.hh: include stdarg.h
273
274 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
275
276         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
277         put_systems_on_pages to return an empty result, we need to assign
278         demerits properly in that case.
279         (put_systems_on_pages): Make the number of pages depend on the
280         evenness of page_number. Add auto-first-page-number.
281         (calc_subproblem): ensure that the page-number is even for the
282         left-hand page. Warn if the first page-turn doesn't fit onto the
283         first (right-hand) page.
284
285         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
286         (min_page_count): make this publicly accessible
287         (min_page_count): fix a bug when there are forced page breaks that
288         was introduced when I made this loop run backwards
289         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
290         replace space_systems_on_min_pages with these two. The logic in
291         space_systems_on_min_pages was getting too convoluted and is better
292         contained in page-turn-page-breaking.
293
294         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
295         conditional
296         (breakable_column): typo
297
298         * lily/source-file.cc (get_line): fix off-by-one error
299         and clean up some of the logic
300
301 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
302
303         * lily/page-breaking.cc (make_pages): honour the first-page-number
304         property
305
306 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
307
308         * VERSION (PACKAGE_NAME): bump version.
309
310 2006-09-26  Pal Benko  <benko.pal@gmail.com>
311
312         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
313         (the latter is the same as petrucci-f which is kept for compatibility)
314
315 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
316         
317         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
318
319 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
320
321         * lily/global-context.cc (run_iterator_on_me): break out of loop
322         if moment doesn't increase.
323
324         * scm/define-grob-properties.scm (all-user-grob-properties): add
325         forced property.
326
327         * lily/accidental.cc (after_line_breaking): read forced property.
328
329         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
330         property.
331
332         * input/regression/accidental-forced-tie.ly:  new file.
333
334 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
335
336         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
337
338         * lily/figured-bass-engraver.cc: only listen to rest events if
339         ignoreFiguredBassRest is not set.
340
341         * scm/define-context-properties.scm
342         (all-user-translation-properties): add ignoreFiguredBassRest property
343
344 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
345
346         * lily/paper-book.cc (get_system_specs):
347         (set_system_penalty): fix breakbefore.
348         We used to set a penalty on the system after the break, now we
349         set a permission on the system before the break
350
351         * lily/grob-property.cc: add scm debugging hooks into
352         property modification
353
354         * lily/context-property.cc:
355         * lily/engraver.cc:
356         rename make_foo_from_properties to internal_make_foo and
357         move it from context-property.cc to a member function of
358         Engraver.
359         
360         * lily/include/lily-guile-macros.hh:
361         overload ly_symbol2scm macro so that there is no more need
362         to use internal_foo
363
364         * lily/volta-repeat-iterator.cc:
365         * lily/tweak-engraver.cc:
366         * lily/tuplet-bracket.cc:
367         * lily/span-bar-engraver.cc:
368         * lily/script-engraver.cc:
369         * lily/prob-scheme.cc:
370         * lily/pointer-group-interface.cc:
371         * lily/parser.yy:
372         * lily/grob-scheme.cc:
373         * lily/grob-property.cc:
374         * lily/context.cc:
375         * lily/context-property.cc:
376         * lily/break-substitution.cc:
377         * lily/break-align-engraver.cc:
378         * lily/axis-group-interface.cc:
379         * lily/align-interface.cc:
380         remove calls to internal_FOO
381
382         * lily/system-start-delimiter-engraver.cc:
383         * lily/parenthesis-engraver.cc:
384         * lily/accidental-engraver.cc:
385         remove calls to make_foo_from_properties
386
387 2006-09-23  Graham Percival  <gpermus@gmail.com>
388
389         * Documentation/user/programming-iterfaces.itely: fix
390         def-music-function -> define-music... leftover.
391
392 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
393
394         * lily/page-spacing.cc (min_page_count): by running the loop
395         backwards, we can calculate ragged_last properly.
396
397 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
398
399         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
400         printfirst-page-number -> print-first-page-number
401
402         * python/convertrules.py: corresponding rule.
403
404         * Documentation/user/page.itely (Page formatting): Document the
405         default values of all page layout parameters. 
406
407 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
408
409         * lily/lexer.ll: remove limitation on music function arity. New
410         mode extratoken, which inserts extra EXPECT_* tokens after
411         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
412
413         * lily/parser.yy: Change grammar for music function accordingly.
414
415         * lily/include/lily-parser.hh: New method get_state, new member
416         hidden_state. Works around a problem when parser fetches
417         MUSIC_FUNCTION token but not the following EXPECT_* token.
418
419         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
420         remove try_music
421
422         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
423         references to Music; use ASSIGN_EVENT_ONCE everywhere
424
425         * lily/grob-info.cc: junk *music_cause
426
427         * lily/music.cc: copy eventified articulations to stream event
428
429         * lily/part-combine-iterator.cc: Cleanup using enums
430
431         * lily/translator-group.cc: Junk OldMusicEvent, and associated
432         methods
433
434         * lily/include/engraver.hh: Junk music.hh include
435
436         * lily/stream-event.cc: Changed constructors
437
438 2006-09-21  Graham Percival  <gpermus@gmail.com>
439
440         * Documentation/user/tweaks.itely (Fitting music onto fewer
441         pages): change settings to avoid warning messages.
442
443 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
444
445         * Documentation/user/tweaks.itely (Fitting music onto fewer
446         pages): Add between-system-space setting. 
447
448 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
449
450         * lily/accidental-placement.cc (calc_positioning_done): don't
451         trigger Y-extent calculation too early. Use pure_height instead.
452
453         * lily/scale.cc (LY_DEFINE): new file. 
454
455 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
456
457         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
458         that happen at the start of a score: having a zero-length
459         chunk was messing up min_system_count calculations.
460
461         * lily/source-file.cc (get_line): lower_bound, not
462         binary_search. Fixes problem where point-and-click would
463         always point to the first line.
464
465 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
466
467         * lily/accidental-placement.cc (calc_positioning_done): also put
468         stems into accidental support. 
469
470         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
471         event_ detected.
472
473         * scm/script.scm (default-script-alist): avoid-slur and
474         slur-padding for portato script.
475
476         * lily/stem-tremolo.cc (translated_stencil): new function. 
477         (height): use new function. Fixes tremolos on whole notes.
478
479         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
480         slur found.
481
482 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
483
484         * scripts/abc2ly.py (try_parse_comment): idem.
485
486         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
487         bar_string iso. string.find()
488
489         * lily/*.cc: idem.
490
491         * lily/slur.cc (get_curve): always use scm_is_pair() looping
492         scheme lists.  
493
494 2006-09-18  Graham Percival  <gpermus@gmail.com>
495
496         * Documentation/user/basic-notation.itely: add bug
497         warning about ties and octavation/clef.
498
499 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
500
501         * VERSION (PACKAGE_NAME): release 2.9.18
502
503 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
504
505         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
506         figure out midi file names right here.
507         
508 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
509
510         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
511
512         * scm/backend-library.scm: option naming:  gs-font-load*s*
513
514         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
515         include-eps-fonts
516
517 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
518
519         * scm/define-music-types.scm (music-descriptions): remove
520         BreakEvent and fix {Page,Line}{Break,Turn}Event so
521         Music::to_event doesn't complain.
522
523         * lily/accidental-placement.cc (ape_compare):
524         * lily/semi-tie.cc (compare): 
525         * lily/note-column.cc (shift_compare): replace by XXX_less
526
527         * lily/tie-formatting-problem.cc (set_chord_outline): 
528         * lily/tie-column.cc (calc_positioning_done): 
529         * lily/system.cc (post_processing)
530         (get_paper_system): 
531         * lily/stem.cc (note_head_positions)
532         (calc_positioning_done): 
533         * lily/spanner.cc (do_break_processing)
534         (find_broken_piece): 
535         * lily/span-bar.cc (print): 
536         * lily/semi-tie-column.cc (calc_positioning_done): 
537         * lily/rest-collision.cc (calc_positioning_done): 
538         * lily/program-option.cc (get_help_string): 
539         * lily/note-collision.cc (get_clash_groups):
540         * lily/new-fingering-engraver.cc (position_scripts):
541         * lily/keyword.cc (Keyword_table):
542         * lily/hara-kiri-group-spanner.cc (request_suicide):
543         * lily/grob-pq-engraver.cc (stop_translation_timestep):
544         * lily/accidental-placement.cc (calc_positioning_done):
545         (stagger_apes):
546         * lily/beam.cc (get_beam_segments):
547         * lily/grob-array.cc (remove_duplicates):
548         use new vector_sort
549         
550         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
551         ragged-last-bottom = ##f (test the new page breaker)
552
553         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
554
555         * scm/define-context-properties.scm
556         (all-internal-translation-properties): remove properties that
557         were used to communicate page-turn stuff to the paper-column
558         engraver.
559
560         * lily/lily-guile.cc (robust_scm2string): new function
561
562         * lily/paper-column-engraver.cc: Clean up page turn stuff
563
564         * lily/page-turn-engraver.cc: Re-write the page turn logic here
565         instead of cluttering up paper-column-engraver.cc
566
567 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
568
569         * scm/layout-page-dump.scm (scm): export utility function names,
570         to allow user writing cutsom dumping functions.
571
572         * scm/layout-page-layout.scm: export utility function names to
573         enable custom page breaking function writing. Tabify.
574         (line-next-space): use ?-suffix only for predicates
575         (page-maximum-space-to-fill): new function. Return the space
576         between first and bottom system of a page, to give to
577         space-systems.
578         (space-systems): use a space-to-fill argument (for instance as
579         computed by page-maximum-space-to-fill) instead of computing
580         internaly this space with the page height. That way, the caller
581         can adjust the space to use.
582         (make-page-from-systems, walk-paths): compute space to fill before
583         calling space-systems.
584
585 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
586
587         * scm/script.scm (default-script-alist): set paddings for every
588         type here, increase for portato mark.
589
590         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
591         -dinclude-eps-fonts
592
593 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
594
595         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
596         use spanner::set-spacing-rods
597
598         * lily/note-column.cc: reformat.
599
600         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
601         step positioning for note/rest combinations.
602
603         * input/regression/rest-note-collision.ly: new file.
604
605         * scm/define-grobs.scm (all-grob-descriptions): add
606         springs-and-rods
607
608         * flower/include/std-vector.hh: switch off again.
609
610         * VERSION (PATCH_LEVEL): bump to 2.9.18
611
612         * flower/include/std-string.hh: idem.
613
614         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
615
616 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
617
618         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
619         PianoStaff. 
620
621 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
622
623         * Documentation/user/page.itely: update page breaking documentation
624
625 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
626
627         * lily/note-collision.cc (calc_positioning_done): only access
628         first head if available.
629
630         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
631
632         * scm/framework-ps.scm (output-preview-framework): use new name.
633
634         * lily/program-option.cc (internal_set_option): use new names.
635
636         * Documentation/user/SConscript (lilypond_book_flags): update -d
637         variable names.
638
639         * Documentation/user/lilypond-book.itely (Inserting LilyPond
640         output into other programs): new variable names.
641
642         * scm/lily.scm (define-scheme-options): uniformize var names.
643
644         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
645         tuplets_ is non-empty before popping.
646
647 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
648
649         * lily/spanner.cc (find_broken_piece): 
650         * lily/spacing-spanner.cc (get_columns): 
651         * lily/source-file.cc (get_line): 
652         * lily/simple-spacer.cc (get_column_description): 
653         * lily/keyword.cc (lookup): 
654         use the new binary search.
655
656         * flower/include/std-vector.hh: replace binary_search with
657         a more STL-like version
658
659 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
660
661         * lily/tie-performer.cc: remove unused last_event_ property.
662         (class Tie_performer): add now_tied_heads_ property for
663         partially-tied heads.
664         (acknowledge_audio_element): when adding an Audio_note, put the
665         note in now_tied_heads_ if the audio note is partially tied.
666         (stop_translation_timestep): always include entries in
667         now_tied_heads_ in heads_to_tie_.
668
669         * lily/drum-note-performer.cc (process_music): look for tie-events
670         in the articulations; pass to Audio_note constructor.
671
672         * lily/note-performer.cc (process_music): look for tie-events in
673         the articulations; pass to Audio_note constructor.
674
675         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
676         constructor.
677
678         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
679         include initializer in constructor.
680
681 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
682
683         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
684         unless they are breakable. This fixes discrepancies between the forces
685         calculated here and the forces calculated in get_line_configuration.
686
687         * lily/grob.cc (pure_relative_y_coordinate): fix some
688         mis-estimation that was happening with piano staves.
689
690         * lily/constrained-breaking.cc (resize): don't choke if we get a
691         measure that won't fit on a line.
692         (combine_demerits): don't consider uniformity when ragged
693
694         * lily/page-spacing.cc (solve): why the f* were there two of these?
695         (calc_subproblem): properly handle the case where a system is taller
696         than the page.
697
698         * lily/system.cc (get_paper_system): ensure that all the permissions
699         and penalties are passed to the paper systems.
700
701         * lily/page-breaking.cc (create_system_list): support system-count.
702
703         * scm/define-grobs.scm (pure-print-callbacks): add
704         ly:script-interface::print
705
706         * lily/page-spacing.cc (min_page_count): fix calculation of min
707         pages if we are ragged and there are non-zero springs.
708
709         * scm/layout-page-layout.scm: if the pure-height estimates are under
710         the real height, allow space-systems to ignore padding if it is
711         needed in order to fit the systems on one page
712
713         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
714         ragged properties
715         (solve): fix performance problem. Make sure we always get at least
716         one solution
717
718         * lily/page-breaking.cc (make_pages): include write-page-breaks
719         and page-stencil
720
721         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
722
723         * scm/define-grobs.scm: add the new slur-callback
724         fix pure-relevant to not exclude grobs whose extent is already
725         calculated
726
727         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
728         page breaker
729
730         * lily/slur.cc (pure_height): new callback to estimate the height
731         of a slur
732
733 2006-09-02  Graham Percival  <gpermus@gmail.com>
734
735         * Documentation/user/invoking.itely: small update on
736         MacOS X notes; thanks Trevor!
737
738 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
739
740         * VERSION (MY_PATCH_LEVEL): release 2.9.17
741
742         * lily/lexer.ll: accept EOF in all states.
743
744         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
745
746         * lily/source-file.cc (Source_file): always 0-terminate character
747         array, to prevent Flex from barfing.
748
749         * lily/global-context.cc (get_output): robustness: don't crash if
750         no Score context found.
751
752         * lily/include/book.hh (class Book): idem.
753
754         * lily/include/context-def.hh (struct Context_def): idem.
755
756         * lily/include/score.hh (class Score): don't derive from Input.
757
758         * lily/book.cc (Book): add a copy ctor. 
759
760         * buildscripts/output-distance.py (FileLink.calc_distance): count
761         orphans in distance too.
762
763         * python/midi.c (midi_parse_track): robustness: don't read past
764         end of string.
765
766         * ly/performer-init.ly: add Control_track_performer, move
767         Tempo_performer and Time_signature_performer to Score.        
768
769         * lily/score-performer.cc (acknowledge_audio_elements): override
770         from base class: add to audio-columns
771
772         * lily/control-track-performer.cc (add_text): new file: generate
773         the control track.
774
775         * lily/performance.cc: move output_header_track to
776         Control_track_performer ()
777
778         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
779
780         * lily/include/midi-item.hh (class Midi_channel_item): insert
781         class into hierarchy, for items that can have a channel setting. Dehungarify.
782
783         * lily/include/performer.hh (class Performer): remove
784         play_element();  move functionality into announce/acknowledge.
785
786         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
787
788         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
789         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
790
791 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
792
793         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
794         ambituses.
795
796         * lily/all-font-metrics.cc: remove TFM support.
797
798         * lily/include/tfm.hh: remove TFM support, TFM reader.
799
800         * lily/include/binary-source-file.hh: remove Binary_source_file.
801
802 2006-08-27  Graham Percival  <gpermus@gmail.com>
803
804         * Documentation/topdocs/NEWS.itely: add @c marker for
805         stuff I've processed.
806
807         * Documentation/user/ various: info from NEWS.
808
809 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
810
811         * lily/paper-column-engraver.cc (finalize): Oops, this change
812         should have gone in on 2006-08-23
813
814 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
815
816         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
817         quotes to quote arguments. Fixes Windows problem.
818
819         * python/lilylib.py (progress): idem
820
821 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
822
823         * scripts/musicxml2ly.py: fix for importing
824         minor key signatures from MusicXML.  (Phillip Kirlin)
825
826 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
827
828         * python/musicxml.py: 
829         (Attributes.get_key_signature): now correctly retrieves mode from 
830         MusicXML. 
831
832 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
833
834         * lily/parser.yy (output_def_body): take ownership of identifier
835         back to C++.
836
837         * Documentation/user/advanced-notation.itely (Metronome marks):
838         update use of \tempo in \midi.
839
840         * VERSION: release 2.9.16
841         
842 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
843
844         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
845         web partially)
846
847 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
848
849         * input/regression/tie-chord-partial.ly: clarify example.
850
851         * scm/define-music-properties.scm (all-music-properties): remove
852         untied.
853
854         * ly/music-functions-init.ly: remove \untied.
855
856         * lily/tie-engraver.cc (struct Head_event_tuple): store both
857         stream events and music events.
858         (stop_translation_timestep): search acknowledged heads for
859         tie-event.
860
861         * input/regression/tie-chord-partial.ly: new file.
862
863         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
864         for \char markup command.
865
866         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
867
868         * scm/define-music-types.scm (music-descriptions): consistency:
869         Use solo-{one,two}-event iso. solo-[12]-event.
870
871         * lily/part-combine-engraver.cc (process_music):
872         Use solo-{one,two}-event iso. solo-[12]-event.
873
874         * ly/declarations-init.ly (partCombineListener): add Timing as
875         alias
876
877         * flower/std-string.cc (string_copy): use copy ()
878
879         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
880
881 2006-08-24  Graham Percival  <gpermus@gmail.com>
882
883         * Documentation/user/changing-defaults.itely, global.itely,
884         lilypond-book.itely, page.itely: minor changes from mailist.
885
886 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
887
888         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
889         snippet-map
890
891         * scm/define-context-properties.scm
892         (translator-property-description): robustness: detect type errors
893         in property definitions.
894
895         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
896         after getting it from SCM. 
897
898         * lily/smobs.cc (protect_smob): switch off fancy smob protection
899         for now. 
900
901         * lily/include/performer.hh (class Performer): strip get_tempo()
902         method.
903
904         * lily/midi-def.cc: strip file.
905
906         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
907
908         * lily/include/context-def.hh (struct Context_def): use
909         VIRTUAL_COPY_CONSTRUCTOR().
910
911         * lily/source-file.cc: smobification.
912
913         * lily/include/source-file.hh (class Source_file): smobify
914         Source_file. Trim redundant members.
915
916         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
917         clones after creation. This plugs a huge memory leak.
918
919         * python/convertrules.py (FatalConversionError.sub_tempo):
920         complete rule for \midi{ \tempo }
921
922         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
923
924         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
925
926 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
927
928         * input/regression/optimal-page-breaking-hstretch.ly: test for
929         ragged-last-bottom also
930
931         * lily/paper-column-engraver.cc (finalize): make the end of a score
932         breakable by default. This is to balance out a change in behaviour
933         of the page-turn-breaker which no longer makes the end of a score
934         breakable.
935
936         * lily/paper-book.cc (pages): set the systems_ once the pages are
937         broken
938
939         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
940         Page_breaking interface.
941
942         * lily/page-breaking.cc (class Page_breaking): make the interface
943         more consistent and provide abstractions for dealing with
944         Line_divisions.
945
946         * lily/optimal-page-breaking.cc (solve): use a more straightforward
947         algorithm. Use the new interface to Page_breaking.
948
949         * lily/page-spacing.cc: better support for ragged-bottom and
950         ragged-last-bottom
951
952 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
953
954         * python/convertrules.py (conv): warning on \tempo{}
955
956         * ly/performer-init.ly: set tempoWholesPerMinute.
957
958         * ly/midi-init.ly: remove \midi
959
960         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
961         MIDI tempo.
962
963         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
964         tempoUnitDuration for determining what to print.
965
966         * lily/lyric-extender.cc: typo.
967
968         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
969
970         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
971         function.
972
973         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
974
975         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
976         eps-pad-boxes is set.
977
978         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
979
980         * THANKS: update sponsors.
981
982         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
983
984         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
985
986         * input/regression/tie-chord-untied.ly: new file.
987
988         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
989
990         * scm/define-music-properties.scm (all-music-properties): add
991         'untied property.
992
993         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
994         than .ly.txt.
995         (headertext_nopics): sanitize no-examples text.
996
997         * scm/page.scm (make-page-stencil): don't rely on extents of
998         page-stencil. This fixes spurious space around .EPS files produced
999         with the EPS backend.
1000
1001 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1002
1003         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1004
1005         * lily/hara-kiri-engraver.cc (process_music): remember
1006         keepAliveInterfaces after processing \set
1007
1008         * lily/lyric-extender.cc (print): support left/right-padding for
1009         extenders.
1010
1011         * scm/documentation-generate.scm (string-append): revert lilypond/
1012         path, doc why.
1013
1014 2006-08-20  Graham Percival  <gpermus@gmail.com>
1015
1016         * Documentation/user/lilypond.tely: clarification to
1017         license presentation (not to actual license).
1018
1019         * Documentation/user/basic-notation.itely,
1020         instrument-notation.itely: minor changes.
1021
1022         * input/ {regression, test}/+.ly: clarification to
1023         text (you can click on examples).  Thanks, Mats!
1024
1025         * input/manual/bar-lines.ly: adds ||: repeats.
1026
1027 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1028
1029         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
1030
1031         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1032
1033         * Documentation/user/lilypond.tely: strip lilypond/ from info
1034         links, rename to category LilyPond
1035
1036         * lily/pango-font.cc (description_string): new function.
1037
1038         * VERSION: release 2.9.15
1039
1040         * lily/spacing-engraver.cc (stop_translation_timestep): use
1041         Dscho's fix for spacing spanner. 
1042
1043         * scm/define-music-types.scm (music-descriptions): use
1044         apply-output-event for ApplyOutputEvent
1045
1046         * lily/output-property-engraver.cc (listen_apply_output): rename
1047         from listen_layout_instruction.
1048
1049         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1050         function protect()
1051
1052 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1053
1054         * scm/lily.scm (lilypond-all): option read-file-list: substitute
1055         commandline args with contains, split by \n.
1056
1057         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1058         write snippet-names file, call with -dread-file-list. Fixes
1059         command limitations on 64-bit systems.
1060
1061         * input/regression/stencil-color-rotation.ly: new file.
1062
1063         * lily/include/translator.hh (struct Acknowledge_information):
1064         revert: don't use Protected_scm in global objects, as GUILE can't
1065         handle gc_unprotect from automated destructors on MacOS X.
1066  
1067         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1068         color, not the original stencil. Fixes combinations of
1069         color/transparency/rotation. 
1070
1071         * scripts/lilypond-book.py (main): add --formats=eps for
1072         texinfo/latex.
1073
1074         * lily/spacing-engraver.cc (stop_translation_timestep): don't
1075         crash if spacing_ is nonexistent.
1076
1077 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
1078
1079         * scripts/lilypond-book.py (output): Remove obsolete(!?)
1080         \catcode`\@=12 in the LaTeX output.
1081
1082 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1083
1084         * scm/define-music-types.scm (music-descriptions):
1085         use sustain-event iso. sustain-pedal-event.
1086
1087 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
1088
1089         * scripts/convert-ly.py: honour the -n command-line switch
1090
1091 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1092
1093         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1094         break specification.
1095
1096 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
1097
1098         * Documentation/user: convert-ly the user manual
1099
1100 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1101
1102         * stepmake/aclocal.m4: version check patch (thanks MWD)
1103
1104         * ly/music-functions-init.ly: robustness. Don't crash if
1105         currentBarNumber is not a number.
1106
1107         * VERSION (PATCH_LEVEL): bump.
1108
1109 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1110
1111         * stepmake/aclocal.m4: better version check; handle fooX.Y
1112         binaries too.
1113
1114         * ly/performer-init.ly: instrument name fixup.
1115
1116         * input/manual/chord-names-jazz.ly (banterProperties):
1117         instrumentName update
1118
1119         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1120
1121         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1122
1123         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1124         function. Use hash tables to check membership.
1125
1126         * lily/general-scheme.cc (LY_DEFINE): new function.
1127
1128         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1129
1130         * lily/include/translator.hh (struct Acknowledge_information): add
1131         Protected_scm
1132
1133         * ly/music-functions-init.ly: change name to BreathingEvent
1134
1135         * input/regression/*.ly: apply it.
1136
1137         * python/convertrules.py (conv): better instrumentName conversion
1138         rule.
1139
1140         * scm/define-music-types.scm (music-descriptions): add
1141         line-break-event to LineBreakEvent music
1142
1143         * lily/music.cc (to_event): don't crash if music type not set.
1144
1145         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1146         spacing not set.
1147
1148         * lily/spacing-engraver.cc (stop_translation_timestep): set
1149         spacing for proportional notation too.
1150
1151         * scm/translation-functions.scm (format-bass-figure): inspect
1152         stream-event.
1153
1154         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1155
1156 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1157
1158         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1159
1160         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1161
1162         * scm/layout-page-layout.scm (make-page-from-systems): new function
1163         (optimal-page-breaks): use the new page-breaking calling convention
1164
1165         * scm/define-context-properties.scm (all-user-translation-properties):
1166         add revokePageTurns
1167
1168         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1169         revokePageTurns  functionality. If there is a special barline within
1170         the breakable region, break there instead of at the end of the region.
1171
1172         * lily/paper-book.cc (pages): use the new page-breaking calling
1173         convention
1174
1175 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1176
1177         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1178
1179         * scripts/lilypond-book.py: insert \sourcefileline command in
1180         output, so lilypond error messages refer to the spot in the
1181         original .lytex / .itely sourcefile.
1182
1183 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1184
1185         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1186         space to next column for distance to fixed col.
1187
1188         * VERSION (PACKAGE_NAME): release 2.9.14
1189
1190         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1191         if no accidental.
1192
1193         * lily/accidental-engraver.cc (process_acknowledged): don't create
1194         accidental for trill span event. This fixes spurious accidentals
1195         on trills.
1196
1197 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1198
1199         * scm/define-grob-properties.scm (all-user-grob-properties):
1200         Clarify documentation of side-axis and direction. Thanks to Paul
1201         for the inspiration.
1202
1203         * lily/bar-line.cc: Add documentation for "||:" also in the
1204         interface documentation.
1205
1206 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1207
1208         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1209
1210         * lily/paper-column.cc (set_system): new function.
1211
1212         * lily/spacing-engraver.cc (stop_translation_timestep): store
1213         SpacingSpanner refs in Paper_column.
1214
1215         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1216         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1217
1218 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1219
1220         * lily/beam-engraver.cc (listen_beam): add method for
1221         Grace_beam_engraver too.
1222
1223 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1224
1225         * python/convertrules.py: Fix indentation bug that broke
1226         conversion of files older than 1.3.117.
1227         Fix escape error in the description for 2.9.6.
1228
1229 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1230
1231         * lily/*-engraver.cc: convert all try_music functions to listen_*
1232         functions.
1233
1234         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1235         enums to represent pedal types, and calculate more data statically.
1236
1237         * scm/part-combiner.scm (recording-group-emulate): create a
1238         softcoded substitute for recording-group-engraver.cc.
1239
1240         * lily/music.cc: make a common transpose function for events and
1241         music
1242
1243         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1244         ManualMelismaEvent, and obsoletes Melisma_translator.
1245
1246 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1247
1248         * input/test/instrument-name-align.ly: update version.
1249
1250 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1251
1252         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1253         Doc the --pdf flag to lilypond-book.
1254
1255 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1256
1257         * Documentation/topdocs/NEWS.tely (Top): add description.
1258
1259         * input/regression/tuplet-full-length-note.ly: add file.
1260
1261         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1262         always store axis group.
1263
1264 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1265
1266         * input/regression/instrument-switch.ly: new file.
1267
1268         * lily/instrument-switch-engraver.cc (process_music): new file.
1269
1270         * ly/engraver-init.ly: add Instrument_switch_engraver
1271
1272         * ly/music-functions-init.ly: \instrumentSwitch
1273
1274         * scm/define-context-properties.scm
1275         (all-user-translation-properties): add instrumentCueName
1276
1277         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1278
1279 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1280
1281         * ly/music-functions-init.ly: music function \transposition.
1282
1283         * lily/parser.yy (command_element): softcode \transposition.
1284
1285         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1286         (process_music): oops.
1287
1288         * lily/instrument-name-engraver.cc (start_spanner): new
1289         function. Create spanner when property changes.
1290         (stop_spanner): new function.
1291
1292         * python/convertrules.py (conv): add rule.
1293
1294         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1295         shortInstrumentName iso. instr.
1296
1297         * scm/output-ps.scm (dashed-line): add phase argument to
1298         dashed-line.
1299
1300         * lily/bar-line.cc (dashed_bar_line): new function.
1301         (compound_barline): support \bar "dashed". 
1302
1303         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1304         --output=DIR to DIR/BASE if it is a dir. 
1305
1306         * flower/file-name.cc (file_part): new function
1307         (dir_part): new function
1308
1309         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1310
1311         * DEDICATION: update
1312
1313 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1314
1315         * lily/instrument-name-engraver.cc: formatting.
1316
1317         * python/convertrules.py (conv): bugfix for \epsfile.
1318
1319 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1320
1321         * lily/grob.cc:
1322         
1323         * lily/gourlay-breaking.cc: Oops, these should have been included
1324         in my last commit
1325
1326 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1327
1328         * scripts/*.py (program_name): cleanup relocation snippets.
1329
1330         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1331
1332 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1333
1334         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1335         page-breakable by default
1336
1337         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1338         correctly calculated for a single-system page
1339
1340         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1341         bigger than the second number
1342
1343         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1344         acknowledge that we aren't satisfying constraints)
1345
1346         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1347         non-Items
1348
1349         * lily/grob.cc (pure_height): add minimum-Y-extent
1350
1351         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1352         ragged
1353
1354         * lily/constrained-breaking.cc: convert code to use new Matrix class
1355         (get_best_solution): new function
1356
1357         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1358         is a page with no systems
1359
1360 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1361
1362         * VERSION (PACKAGE_NAME): release 2.9.13
1363
1364         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1365         assignment.
1366
1367 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1368
1369         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1370
1371         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1372         function.
1373
1374         * scm/define-grob-properties.scm (all-user-grob-properties):
1375         remove grace-space-factor.
1376
1377         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1378         grace-spacing-interface
1379         (spacing-options-interface): add.
1380
1381         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1382
1383         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1384
1385         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1386         GraceSpacing object.
1387
1388         * lily/note-spacing.cc: fix prop list formatting
1389
1390         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1391         beaming for grace notes too.
1392
1393         * input/regression/spacing-grace.ly: update.
1394
1395         * lily/grace-spacing-engraver.cc: new file.
1396
1397         * lily/spacing-spanner.cc: add strict-grace-spacing.
1398
1399 2006-07-20  Graham Percival  <gpermus@gmail.com>
1400
1401         * lily/parser.yy: compile fix.
1402
1403 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1404
1405         * scm/define-grobs.scm (all-grob-descriptions): typo.
1406
1407         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1408         .eps extension from includegraphics.
1409
1410         * scripts/lilypond-book.py (main): add support for --pdf. 
1411
1412         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1413         callback to compute common shortest duration.
1414         (set_springs): typo.
1415
1416         * scm/define-grob-properties.scm (all-user-grob-properties): add
1417         strict-grace-spacing.
1418
1419         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1420         support float_grace_columns_.
1421
1422         * lily/spacing-options.cc (init_from_grob): new file.
1423
1424         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1425
1426         * input/regression/spacing-loose-grace.ly: new file.
1427
1428         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1429
1430         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1431         tupletFullLengthNote too. Choose right bound depending on value.
1432
1433         * input/regression/tuplet-full-length-note.ly: new file.
1434
1435 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1436
1437         * lily/*-performer.cc: Converted try_music to listen_*
1438
1439         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1440         as a stream-event internally. Introduce event_cause (), deprecate
1441         music_cause ().
1442
1443         * scm/define-music-types.scm: Removed BusyPlayingEvent
1444         
1445 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1446
1447         * Documentation/user/advanced-notation.itely (Font selection):
1448         Document how to get a list of available fonts using 'lilypond
1449         -dshow-available-fonts blabla'.
1450
1451 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1452
1453         * GNUmakefile.in: filter lily-XXX.pdf files.
1454
1455         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1456
1457         * scm/define-grob-properties.scm (all-internal-grob-properties):
1458         remove delta-pitch. Use delta-position everywhere.
1459
1460         * scm/output-lib.scm (fall::print): use new order.
1461
1462         * scm/output-ps.scm (path): reorder arguments.
1463
1464         * scm/output-svg.scm (path): support for path primitive.
1465
1466         * input/regression/bend-after.ly: new file.
1467
1468         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1469         recipe for eps -> pdf conversion.
1470
1471 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1472
1473         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1474         Angelo Contardi.
1475
1476 2006-07-19  Graham Percival  <gpermus@gmail.com>
1477
1478         * input/manual/screech-boink.ly: moved to here.
1479
1480         * input/screech-boink.ly: deleted.
1481
1482         * scm/define-grob-properties.scm: clarify doc string.
1483
1484 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1485
1486         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1487
1488         * scm/output-ps.scm (path): define path.
1489
1490         * scm/define-stencil-commands.scm
1491         (ly:register-stencil-expression): add path.
1492
1493         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1494
1495         * ly/engraver-init.ly: add Fall_engraver
1496
1497         * lily/parser.yy (music_function_event): allow musicfunction
1498         without music arg as music_function_event.
1499
1500         * lily/grob-scheme.cc (LY_DEFINE):
1501         ly:grob-robust-relative-extent. New function.
1502
1503         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1504
1505         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1506
1507         * scm/output-lib.scm (fall::print): new function
1508
1509         * lily/fall-engraver.cc (stop_fall): new file.
1510
1511         * ly/music-functions-init.ly: alphabetise.
1512
1513         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1514         base.
1515
1516 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1517
1518         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1519
1520         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1521         doc pdftex usage.
1522
1523         * lily/translator-group.cc (connect_to_context): non const error message.
1524
1525         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1526
1527         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1528         if unset.
1529
1530         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1531
1532         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1533
1534         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1535         systems.pdftex too.
1536
1537         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1538
1539         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1540
1541         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1542
1543         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1544
1545         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1546
1547         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1548
1549 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1550
1551         * scm/layout-page-layout.scm: Define module, tidy code, use more
1552         functions iso. a single big one.
1553
1554         * scm/layout-page-dump.scm: move page dump functions used in two
1555         pass spacing to this file. Define module.
1556
1557         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1558          (separate module)
1559
1560         * ly/paper-defaults.ly: use module layout-page-layout.
1561
1562 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1563
1564         * lily/music.cc: Revised MusicEvent event class. It now contains
1565         event data directly instead of encapsulating it in music. The
1566         previously used class is renamed to OldMusicEvent.
1567
1568         * lily/stream-event.cc: Stream events are now probs.
1569         
1570         * lily/translator-group.cc, lily/translator.cc: Translators can
1571         now listen directly to stream events, by using macros
1572         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1573
1574         * lily/arpeggio-engraver.cc: Converted to use new event system
1575
1576         * THANKS: Corrected spelling mistake.
1577
1578 2006-07-12  Graham Percival  <gpermus@gmail.com>
1579
1580         * Documentation/user/SConscript, make/lilypond-vars.make,
1581         input/GNUmakefile: doc build looks in input/manual instead
1582         of input/test/
1583
1584         * input/manual/ GNUmakefile, SConscript: build files for
1585         input/manual/
1586
1587         * input/test/ various: some files moved to input/manual/ 
1588
1589         * Documentation/user/basic-notation.itely: small updates;
1590         thanks Kieren and Charles!
1591
1592 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1593
1594         * VERSION (PACKAGE_NAME): release 2.9.11
1595
1596         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1597
1598         * Documentation/user/basic-notation.itely (Tuplets): new property
1599         value.
1600
1601 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1602
1603         * python/convertrules.py (conv): tweaks. 
1604
1605         * VERSION (PATCH_LEVEL): bump version.
1606
1607         * python/convertrules.py (conv): add rule for
1608         tupletNumberFormatFunction.
1609
1610         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1611         tupletNumberFormatFunction.
1612
1613         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1614         text through 'text callback.
1615
1616         * lily/time-scaled-music-iterator.cc (construct_children): copy
1617         tweaks generated events.
1618
1619         * scm/define-context-properties.scm
1620         (all-user-translation-properties): remove tupletNumberFormatFunction
1621
1622         * lily/tuplet-engraver.cc (process_music): don't read
1623         tupletNumberFormatFunction
1624
1625         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1626         function.
1627
1628 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1629
1630         * lily/global-context-scheme.cc: Separated ly:run-translator into
1631         smaller pieces.
1632
1633         * lily/score-engraver.cc, lily/score-performer.cc,
1634         scm/define-context-properties.scm: Make paper/midi output
1635         accessable as a context property.
1636
1637         * lily/score-translator.cc, lily/score-context.cc: Removed.
1638
1639 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1640
1641         * scm/ps-to-png.scm (Module): 
1642         * scm/framework-tex.scm (Module): 
1643         * scm/framework-ps.scm (Module): 
1644         * scm/backend-library.scm (Module): 
1645         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1646         "dDEVICEHEIGHTPOINTS".
1647
1648 2006-07-04  Graham Percival  <gpermus@gmail.com>
1649
1650         * Documentation/user/ various: general improvements to
1651         "working with lilypond files" section.
1652
1653 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1654
1655         * lily/sequential-iterator.cc: Change the default get_music_list
1656         to read elements-callback music property
1657
1658         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1659         processing of multimeasure rests. Softcoded
1660         sequential-music-iterator.
1661
1662         * lily/sequential-music-iterator.cc: Removed.
1663
1664 2006-06-28  Graham Percival  <gpermus@gmail.com>
1665
1666         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1667
1668 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1669
1670         * lily/parser.yy: Wrap non-post-events in EventChords before
1671         assigning them to identifiers.
1672
1673 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1674
1675         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1676         gives correct vertical placement of \bar ":" in all staff
1677         sizes. Thanks Martial!
1678
1679 2006-06-26  Graham Percival  <gpermus@gmail.com>
1680
1681         * Documentation/user/invoking.itely : minor update from mailist.
1682
1683 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1684
1685         * lily/ various: Introduce stream events of types Prepare,
1686         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1687         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1688
1689         * lily/global-context*.cc: Time is now -inf before iteration
1690         starts.
1691
1692         * lily/include/context.hh: Removed unique_, init_
1693
1694         * Documentation/topdocs/NEWS: Make the feathered beam example
1695         avoid triggering a bug.
1696
1697 2006-06-24  Graham Percival  <gpermus@gmail.com>
1698
1699         * Documentation/user/ various: small additions from mailist.
1700
1701 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1702
1703         * ly/performer-init.ly: Add some missing links in the context
1704         hierarchy for MIDI output. There are probably some more missing!
1705
1706 2006-06-21  Graham Percival  <gpermus@gmail.com>
1707
1708         * Documentation/user/ various: minor spelling fixes;
1709         thanks Dave Luttinen!
1710
1711         * Documentation/user/ various: small clarifications;
1712         thanks Anthony Youngman!
1713
1714 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1715
1716         * po/fr.po: add \n appropriately.
1717
1718         * lily/lexer.ll: remove ? from version-seen?  
1719
1720 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1721
1722         * po/fr.po; update translation, by Jean-Charles Malahieude and
1723         John Mandereau.
1724
1725 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1726
1727         * THANKS: add Markus Schneider.
1728
1729         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1730         Staff_symbol_engraver
1731
1732         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1733         replace staff_engraver
1734
1735         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1736         spanner.
1737
1738         * lily/staff-collecting-engraver.cc
1739         (acknowledge_end_staff_symbol): new function
1740
1741         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1742
1743         * lily/staff-collecting-engraver.cc
1744         (acknowledge_end_staff_symbol): new function.
1745
1746         * lily/main.cc: switch on relocation by default.
1747
1748 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1749
1750         * lily/spacing-spanner.cc (musical_column_spacing): set
1751         compound_fixed_note_space to 0.0. Document why.
1752
1753         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1754         range of inverse_hooke_
1755         (Simple_spacer): init completely.
1756         (fits): const
1757         (get_line_configuration): don't use cols.resize(); it introduces
1758         initialized data.
1759
1760         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1761
1762         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1763
1764         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1765         try. Divide by beatlength.
1766
1767         * input/regression/beaming-ternary-metrum.ly: update doc.
1768         add beatLength hack.
1769
1770         * scm/music-functions.scm (make-time-signature-set): add
1771         standard-beat-grouping. 
1772
1773 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1774
1775         * input/regression/tie-whole.ly: new file.
1776
1777         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1778         cross center of note head in case of invisible stem. 
1779
1780 2006-06-16  Graham Percival  <gpermus@gmail.com>
1781
1782         * Documentation/user/ various: small fixes from mailist.
1783
1784 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1785
1786         * lily/breathing-sign.cc (offset_callback): idem.
1787
1788         * lily/align-interface.cc (align_to_fixed_distance): remove
1789         hungarian suffix.
1790
1791         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1792         x%2==0.
1793
1794 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1795
1796         * VERSION (PACKAGE_NAME): release 2.9.9
1797
1798         * ly/lilypond-book-preamble.ly: add \version
1799
1800 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1801
1802         * scripts/lilypond-book.py (PREAMBLE_LY): include
1803         lilypond-book-preamble.ly
1804
1805         * lily/stem.cc (get_beaming): return max of 0 and
1806         scm_ilength. Fixes slurring from/to beams.
1807
1808         * ly/lilypond-book-preamble.ly: new file.
1809
1810         * lily/slur.cc: add inspect-index feature.
1811
1812 2006-06-13  Graham Percival  <gpermus@gmail.com>
1813
1814         * Documentation/user/tutorial.itely: trivial fix.
1815
1816 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1817
1818         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1819         all non-event music in the parser via MAKE_SYNTAX.
1820
1821         * lily/parser-scheme.cc: Add ly:parser-error function
1822
1823         * scm/paper.scm: fix typo
1824
1825 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1826
1827         * THANKS: add RT.
1828
1829         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1830         is null.
1831
1832         * buildscripts/output-distance.py (test_compare_signatures):
1833         timing routines.
1834         (read_signature_file): use new signature format.
1835
1836         * scm/stencil.scm (write-system-signature): simpler signature
1837         format.
1838
1839         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1840         for beamed case. 
1841
1842         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1843         stem_end_position, but estimate instead. 
1844
1845         * lily/tuplet-bracket.cc (calc_positions): look at
1846         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1847         brackets narrower than beams. 
1848
1849         * lily/lexer.ll: set version-seen? even if version is
1850         INVALID. 
1851
1852         * lily/rest.cc (y_offset_callback): bugfix: decide position
1853         override based on scm_is_number(). Fixes \rest on center staff
1854         line. 
1855
1856         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1857         patterns for 16th triplets.
1858
1859 2006-06-10  Graham Percival  <gpermus@gmail.com>
1860
1861         * Documentation/user/ page.itely, global.itely: editing
1862         and reorg.
1863
1864         * Documentation/user/ various: findex -> funindex.
1865
1866 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1867
1868         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1869         insert extra tuplet events.
1870
1871 2006-06-10  Graham Percival  <gpermus@gmail.com>
1872
1873         * Documentation/user/programming-interfaces.itely: add
1874         info from NEWS.
1875
1876         * python/convertrules.py: add annotatefoo -> annotate-foo
1877         rules.
1878
1879         * Documentation/user/global.itely: start editing.
1880
1881         * Documentation/user/page.itely: major editing, new spacing
1882         docs.
1883
1884 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1885
1886         * scm/define-markup-commands.scm (wordwrap-markups): use
1887         output-def 'line-width if undefined.
1888
1889         * HACKING: trim outdated info.
1890
1891 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1892
1893         * scm/define-grobs.scm (all-grob-descriptions): Add
1894         line-spanner-interface to all grobs that already have
1895         text-spanner-interface or dynamic-text-spanner-interface
1896
1897         * scm/page.scm: Rename annotate{headers,systems,page}->
1898         annotate-*
1899
1900         * input/regression/page-spacing.ly,
1901         input/regression/page-layout-manual-position.ly: idem
1902
1903 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1904
1905         * lily/line-spanner.cc: cleanup property list.
1906
1907         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1908         generator expressions (2.3 compat). 
1909
1910 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1911
1912         * lily/vertical-align-engraver.cc: Make sure that the
1913         align{Above,Below}Context properties are included in the automatic
1914         documentation.
1915
1916 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1917
1918         * scm/paper-system.scm (paper-system-annotate): also annotate the
1919         estimated pure-Y-extent
1920
1921         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1922
1923         * lily/system.cc (break_into_pieces): set the estimated height
1924         of each child system
1925
1926         * lily/stem.cc (pure_height): new pure-Y-extent callback
1927
1928         * lily/staff-symbol-referencer.cc (callback): don't destroy
1929         the staff-position property
1930
1931         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1932         consider_suicide into two functions
1933
1934         * lily/constrained-breaking.cc (resize): use the new pure
1935         callbacks to estimate the height of a system
1936
1937         * lily/axis-group-interface.cc (pure_group_height): new
1938         side-effect-free VerticalAxisGroup height-callback
1939
1940         * lily/align-interface.cc (get_extents_aligned_translates):
1941         split align_elements_to_extents into two functions
1942         (get_pure_child_y_translation): new function
1943
1944         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1945
1946         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1947
1948         * lily/paper-score.cc: cache break_indices and columns
1949
1950         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1951         
1952 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1953
1954         * lily/font-config.cc (init_fontconfig): do the init if
1955         cache_file, but don't look at cache_file.
1956
1957         * input/regression/quote-tie.ly: new file.
1958
1959         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1960         to Head_event_tuple, so we deal gracefully with ties on
1961         cue-endings.
1962
1963         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1964         for FcChar8*
1965
1966 2006-06-08  Graham Percival  <gpermus@gmail.com>
1967
1968         * input/test/ smart-transpose.ly, reverse-music.ly:
1969         \applyMusic to music functions update, thanks Michael!
1970
1971 2006-06-07  Graham Percival  <gpermus@gmail.com>
1972
1973         * input/test/ add-staccato.ly, add-text-script.ly,
1974         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1975         music functions update, thanks to Michael Meixner.
1976
1977         * Documentation/user/music-glossary.tely: small fix
1978         from Francisco.
1979
1980         * Documentation/user/ various: minor additions from mailist.
1981
1982         * Documentation/user/lilypond.tely, basic-notation.itely:
1983         small test of @funindex.  (works here)
1984
1985         * input/test/font-table.ly: reduce size to partially
1986         de-ugly version in manual.
1987
1988         * Documentation/user/page.itely: new file (split former
1989         "global issues" into "page settings" and "non-musical
1990         output".
1991
1992         * Documentation/user/ various: fix @ref{}s to match
1993         new chapter names (above).
1994
1995 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1996
1997         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1998
1999 2006-06-06  Graham Percival  <gpermus@gmail.com>
2000
2001         * Documentation/user/advanced-notation.itely: add example
2002         for segno/coda on barline.
2003
2004         * tex/texinfo.tex: merge from upstream.
2005
2006 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2007
2008         * scripts/lilypond-book.py (process_snippets): Argument fix.
2009
2010         * SConstruct:
2011         * buildscripts/builder.py:
2012         * lily/SConscript: 
2013         * mf/SConscript: 
2014         * Documentation/user/SConscript:  More SCons fixes.
2015
2016 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2017
2018         * lily/font-config.cc (init_fontconfig): Only initialize if
2019         global cache_file is found.
2020
2021 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
2022
2023         * ly/music-functions-init.ly: Updated \overrideProperty to use the
2024         new \applyOutput.
2025
2026 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2027
2028         * VERSION (PACKAGE_NAME): release 2.9.8
2029
2030         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2031         function. Delay ledger modifying ledgered grobs to
2032         stop_translation_timestep(), to ensure that we're ledgering
2033         according to the new spanner.
2034         (acknowledge_staff_symbol): don't check for non-NULL
2035         staff_sym->get_bound()
2036
2037         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2038         creation.
2039
2040         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2041         pictures too.
2042
2043         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2044         directly from srcdir/stepmake/aclocal.m4
2045         
2046         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2047         disting MISC files.
2048
2049         * lily/simple-spacer.cc (get_column_desc): desc -> description.
2050
2051 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2052
2053         * lily/simple-spacer.cc (get_line_configuration): add
2054         keep-inside-line rods
2055         (struct Column_desc): add constructor
2056         (struct Rod_desc): add constructor
2057         (get_line_forces): check for forced page breaks here too
2058
2059         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2060         support/elements cycles between InstrumentNames and AxisGroups
2061
2062 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2063
2064         * config.make.in (METAFONT): remove MAKEINFO_VERSION
2065
2066         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2067         make-txt-files target.
2068
2069         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2070         make-txt-files target.
2071
2072         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2073
2074         * stepmake/stepmake/generic-vars.make (distdir): create dist in
2075         top-build-dir.
2076
2077 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
2078
2079         * Documentation/user/instrument-notation.itely,
2080         input/regression/breathing-sign-ancient.ly,
2081         input/test/divisiones.ly: Removed redundant property settings for
2082         vaticana contexts.
2083
2084         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2085         fix lyrics alignment problems.  They are implemented now as scheme
2086         functions that add the appropriate unicode char to the first lyric
2087         event rather than adding a separate lyric event.  Minor edit of
2088         comments.
2089
2090 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2091
2092         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2093         pollute src dir with built .txt files, but install directly from
2094         Documentation/topdocs/out/
2095
2096         * buildscripts/output-distance.py
2097         (ComparisonData.create_html_result_page): put version/directories
2098         in table header.
2099
2100         * Documentation/topdocs/NEWS.tely (Top): document spacing section
2101         feature.
2102
2103         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2104         Patch by Karl Hammar
2105         
2106         * buildscripts/readlink.py: add  file.
2107         Patch by Karl Hammar
2108
2109 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2110
2111         * lily/tuplet-number.cc (print): prevent stencil from being
2112         garbage collected.
2113
2114 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2115
2116         * scm/stencil.scm (write-system-signature): explicitly 
2117         -well, superfluously- close output port.
2118
2119         * buildscripts/output-distance.py (main): oops. Add extra argument.
2120
2121 2006-06-05  Graham Percival  <gpermus@gmail.com>
2122
2123         * Documentation/user/music-glossary.tely: clarified example
2124         from Francisco Vila, thanks!
2125
2126 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2127
2128         * input/regression/spacing-section.ly: new file.
2129
2130         * lily/input.cc (programming_error): new function.
2131
2132         * lily/spacing-engraver.cc (try_music): new function. Accept
2133         spacing-section-event
2134
2135         * lily/spacing-spanner.cc (set_springs): take slices of all
2136         columns for spacing.
2137
2138         * lily/include/paper-column.hh (class Paper_column): add
2139         Paper_column::compare.
2140
2141         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2142
2143         * scm/define-music-types.scm (music-descriptions): add
2144         SpacingSectionEvent
2145
2146         * lily/music-iterator.cc (report_event): use programming_error for
2147         sending non-event error.
2148
2149         * lily/input.cc (programming_error): new function
2150
2151         * buildscripts/output-distance.py (main): use compare-XXX for
2152         compare files.
2153         (main): --threshold option, default at 0.30
2154
2155         * output-distance.py (main): add --threshold option.
2156
2157 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2158
2159         * scm/paper-system.scm (paper-system-annotate): fix problem when
2160         annotating an empty system
2161
2162 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2163
2164         * GNUmakefile.in: reinstate old web tar/copying.
2165
2166 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2167
2168         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2169         nothing changes. (Erik S) 
2170
2171         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2172         count. (Erik S)
2173
2174 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2175
2176         * scm/define-markup-commands.scm (whiteout): do not force
2177         foreground color of argument markup to black.
2178
2179         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2180         the left of the arrow, instead of below the arrow name, so that,
2181         when two little arrows are vertically stacked, their dimensions
2182         and name should not overlap. Add a color key parameter.
2183
2184         * scm/paper-system.scm (paper-system-annotate): Annotate
2185         next-space+next-padding instead of next-space. Annotate space
2186         between next-padding and next-space+padding, respectively, and
2187         following system extent and refpoint-Y-extent. Use colors.
2188
2189         * scm/page.scm (annotate-page): translate annotations slightly to
2190         the right.
2191
2192 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2193
2194         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2195         fix for x-staff slurs. Thanks Joe!
2196
2197         * buildscripts/output-distance.py
2198         (SystemLink.output_expression_change_count): keep track of changed
2199         details, and dump in details html page.
2200  
2201         * input/regression/figured-bass-staff.ly: add note about setting
2202         properties in Staff context.
2203
2204         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2205         add slurs and ties to support too.
2206
2207         * buildscripts/output-distance.py (main): set dest_dir
2208         argument. Add --max-count option.
2209
2210 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2211
2212         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2213         shortcuts for special unicode chars that are useful in chant
2214         notation.  Revised exisiting and added new comments.
2215
2216 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2217
2218         * make/mutopia-rules.make: remove duplicate recipe.
2219
2220 2006-06-02  Werner Lemberg  <wl@gnu.org>
2221
2222         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2223         Add support for U+0132 (IJ) and U+0133 (ij).
2224
2225 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2226
2227         * buildscripts/output-distance.py (FileLink): new class. collect
2228         info systems from one .ly file. 
2229         (FileLink.link_files_for_html): further tweaks.
2230
2231 2006-06-02  Graham Percival  <gpermus@gmail.com>
2232
2233         * tex/texinfo.tex: partial fix for @funindex.
2234
2235         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2236         break anything).
2237
2238 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2239
2240         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2241
2242         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2243         @example too. Backportme.
2244
2245 2006-06-02  Graham Percival  <gpermus@gmail.com>
2246
2247         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2248         from Werner Lemberg.
2249
2250 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2251
2252         * Documentation/user/music-glossary.tely: additional spanish
2253         updates and a lyrics fix in an example.
2254
2255 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2256
2257         * scm/define-grob-properties.scm: Previous patch contained
2258         spurious line from another patch not yet committed.  Fixed.
2259
2260         * scm/define-grob-properties.scm: Add missing doc strings for
2261         ancient notation.
2262
2263 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2264
2265         * buildscripts/output-distance.py
2266         (ComparisonData.write_text_result_page): separate the scores, sort
2267         by geo_score.
2268
2269         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2270         system signatures.
2271
2272         * buildscripts/output-distance.py (me_path): use argv[0] for
2273         sys.path extension
2274         (ComparisonData.img_cell): use colored borders.
2275
2276         * scm/stencil.scm (write-system-signature): escape newlines too.
2277         (write-system-signature): use (1,-1) interval for empty interval
2278
2279 2006-01-01  Graham Percival  <gpermus@gmail.com>
2280
2281         * Documentation/user/music-glossary.tely: Spanish updates
2282         from Francisco Vila.
2283
2284         * Documentation/user/lilypond-book.itely: addition from
2285         Vaclav Smilauer.
2286
2287         * Documentation/user/ various: edits, small additions
2288         from mailist, etc.
2289
2290 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2291
2292         * GNUmakefile.in (tree-lib-prefix-current):
2293         (tree-share-prefix-current): Use version number in tree, add
2294         `current' symlinks.
2295
2296 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2297
2298         * GNUmakefile.in: write VERSION, again.
2299
2300         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2301         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2302
2303         * stepmake/aclocal.m4: robuster version detection.
2304
2305         * buildscripts/output-distance.py
2306         (ComparisonData.create_html_result_page): copy only if file
2307         exists, fixup src paths.
2308
2309         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2310
2311 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2312
2313         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2314         Another datarootdir reto.
2315
2316         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2317         available.  This should be moved to postinstall-lilypond-doc.
2318
2319 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2320
2321         * GNUmakefile.in: simplify local-WWW-post. 
2322         remove -type l from find.
2323
2324         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2325         fixes. Don't follow symlinks.
2326         (ComparisonData.create_html_result_page): remove previous results.
2327         insert ../python in path.
2328
2329         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2330
2331 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2332
2333         * config.make.in (datadir): Add datarootdir to silence autoconf.
2334
2335         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2336
2337 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2338
2339         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2340
2341         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2342         slash beams too wide.
2343
2344 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2345
2346         * VERSION: release 2.9.7
2347         
2348 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2349
2350         * lily/relocate.cc (read_relocation_dir): Do not blindly
2351         dereference DIR.
2352
2353 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2354
2355         * lily/parser.yy: replace THIS by PARSER
2356
2357         * Documentation/index.html.in: add link to test-results.html page.
2358
2359         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2360
2361         * scm/translation-functions.scm (format-bass-figure): translate
2362         digits over 10 to the left
2363
2364         * scm/define-markup-commands.scm (translate-scaled): new markup.
2365
2366         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2367         7 glyph. 
2368
2369         * ly/engraver-init.ly: add Figured_bass_engraver
2370
2371         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2372
2373         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2374
2375         * lily/score-engraver.cc (announce_grob): only note START announces.
2376
2377         * lily/include/engraver-group.hh (Translator_group):
2378         acknowledge_hash_table_ is now drul.
2379
2380         * lily/engraver.cc (announce_end_grob): new method.
2381
2382         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2383
2384         * lily/translator-dispatch-list.cc (create): take start_end argument.
2385
2386         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2387         acknowledge_static_array_ to drul
2388
2389         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2390
2391         * scm/define-grob-interfaces.scm
2392         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2393
2394         * scm/define-grobs.scm (all-grob-descriptions): add
2395         BassFigureAlignmentPositioning
2396
2397         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2398         number stays up to date. Backportme.
2399
2400 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2401
2402         * Documentation/user/basic-notation.itely (Bar lines): Document
2403         the "||:" bar type. 
2404
2405 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2406
2407         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2408
2409         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2410         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2411         build.
2412
2413         * Resurrect `scons lily' build.
2414
2415         * SConstruct (symlink_tree): Bugfix: link
2416         music-drawing-routines.ps to file iso directory.
2417
2418         * lily/SConscript: Remove kpath-guile from LIBS.
2419
2420         * SConstruct (libdir_package_version): Typo.
2421         (configure): Comment-out fontforge for lack of fontforge.pc .
2422         Also add libdir* to environment.
2423
2424 2006-05-30  Graham Percival  <gpermus@gmail.com>
2425
2426         * Documentation/user/ various: minor additions from mailist and
2427         editing.
2428
2429 2006-05-30  Paco <fravd@ya.com>
2430
2431         * Documentation/user/music-glossary.tely: numerous corrections and
2432         some new translations.
2433
2434 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2435
2436         * BackportmeStart.
2437         
2438         * buildscripts/output-distance.py
2439         (ComparisonData.create_html_result_page): new routine: summarise
2440         results in HTML page with images. 
2441         (ComparisonData.create_text_result_page): create summary text files too.
2442
2443         * GNUmakefile.in (web-ext): package .signature files too. They
2444         compress well. 
2445
2446         * scm/stencil.scm (write-system-signature): typo.
2447
2448         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2449
2450         * scm/stencil.scm (write-system-signature): better escaping.
2451         only write signature for music systems, not for markup systems.
2452
2453         * scm/framework-ps.scm (output-framework): dump-signatures support
2454         for plain output.
2455
2456         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2457
2458         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2459         for -dno-point-and-click
2460
2461         * lily/grob.cc (get_print_stencil): don't read
2462         point_and_click_global to determine whether to set grob-cause.
2463
2464 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2465
2466         * buildscripts/output-distance.py (main): new function.
2467         (ComparisonData): new class.
2468
2469         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2470         careful with generating new LedgerLineSpanners.
2471
2472         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2473
2474         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2475         context. This fixes double ledger lines in output. 
2476
2477         * lily/system.cc (get_paper_system): remove 3 layer limit.
2478
2479         * buildscripts/output-distance.py (SystemLink.distance): new
2480         file. Compare signatures.
2481
2482         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2483
2484         * lily/grob-array.cc (remove_duplicates): rename from
2485         uniq(). Sort before calling uniq() so it actually works.
2486
2487 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2488
2489         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2490         \version from lilypond file snippet.
2491         (Lilypond_file_snippet.ly): oops. typo.
2492         (find_toplevel_snippets): urgh. again.
2493
2494         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2495         prevent duplicated broken items in output.
2496
2497         * scm/framework-eps.scm (output-classic-framework): only dump if
2498         dump-signatures is set.
2499
2500         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2501
2502         * scm/stencil.scm (write-system-signature): new routine: write
2503         python parseable signature of a separate paper system.
2504         BackportmeEnd.
2505         
2506 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2507
2508         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2509         iso is_string().
2510         include header.
2511
2512 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2513
2514         * translator-group.cc: send music events to engravers in
2515         non-bottom contexts.
2516
2517         * tuplet-engraver.cc: process tuplet brackets in correct order.
2518
2519 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2520
2521         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2522         arg 2 might point us to a new binary (patch by Karl Hammar)
2523         
2524 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2525
2526         * VERSION (PACKAGE_NAME): release 2.9.6
2527
2528         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2529
2530         * Documentation/user/*.itely: 2nd
2531         attempt: replace funindex -> findex globally.
2532
2533 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2534
2535         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2536         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2537
2538         * scm/define-music-display-methods.scm: display methods for
2539         breaks. Fix \applyOutput.
2540
2541 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2542
2543         * Documentation/user/macros.itexi: comment out funindex expansion. 
2544
2545         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2546         everywhere.
2547
2548         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2549         Karl Hammar. Backportme.
2550  
2551         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2552
2553         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2554
2555         * Documentation/user/programming-interface.itely (Running a
2556         function on all layout objects): idem.
2557
2558         * Documentation/user/introduction.itely (Automated engraving):
2559         update \applyOutput syntax
2560
2561         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2562         remove debugging hook.
2563
2564         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2565         expansion. 
2566
2567         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2568
2569         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2570         TEXI2DVI_FLAGS to texi2dvi invocation. 
2571
2572 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2573
2574         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2575         works. More work is done by iterator now, and engraver has been
2576         very much simplified.
2577
2578         * lily/translator-group.cc: try_music is now invoked through a
2579         listener
2580
2581         * lily/*-iterator.cc: Massive cleanups. Junked
2582         try_music_in_children globally. Renamed try_music to report_event,
2583         and made that method descend to a bottom context automatically.
2584
2585         * lily/event-iterator.cc: New file.
2586
2587         * lily/output-property-iterator.cc,
2588         lily/old-lyric-combine-music-iterator.cc: Removed.
2589
2590         * python/convert-rules.py: Modified the syntax for \applyOutput.
2591
2592 2006-05-23  Graham Percival  <gpermus@gmail.com>
2593
2594         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2595         creation.
2596
2597         * Documentation/user/ various: stuff that might have helped
2598         to fix the pdf creation, plus some minor doc additions.
2599
2600         * Documentation/user/changing-defaults.itely: remove @b from
2601         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2602
2603 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2604
2605         * lily/beaming-pattern.cc (beamify): deal with negative start
2606         moments for beaming patterns.
2607
2608 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2609
2610         * lily/beaming-info.cc (beamify): new function: read beatLength
2611         and beatGrouping from context. 
2612
2613         * input/regression/beam-beat-grouping.ly (Module): new file.
2614
2615         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2616
2617         * lily/beam.cc (get_beam_segments): generate events for
2618         max_connect_ case too.
2619         (get_beam_segments): read Stem::max-beam-connect.
2620
2621         * input/regression/beam-single-stem.ly: new file.
2622
2623         * lily/stem.cc (set_beaming): use #f as signaling value for
2624         beamcount 0.
2625
2626         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2627
2628         * lily/beam.cc (set_beaming): read clip-edges property.
2629         (calc_direction): don't suicide for single stem.
2630
2631         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2632         argument, remove 1<<15 hack. Remove clip_edges() 
2633
2634         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2635
2636 2006-05-21  Graham Percival  <gpermus@gmail.com>
2637
2638         * Documentation/user/basic-notation.itely: reorg.
2639
2640         * Documentation/user/ various: minor fixes.
2641
2642 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2643
2644         * lily/stencil-expression.cc (register_stencil_head): opps, append
2645         to cdr of static SCM object.
2646
2647 2006-05-19  Graham Percival  <gpermus@gmail.com>
2648
2649         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2650         update framework for command index.  DOC WRITERS: use @funindex
2651         instead of @cindex @code{}.
2652
2653         * Documentation/user/ various: replace @cindex @code{} => @funindex
2654
2655 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2656
2657         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2658         case positions is set manually. 
2659
2660 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2661         
2662         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2663         rules to Scheme.
2664
2665 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2666
2667         * Documentation/user/changing-defaults.itely (Contexts explained):
2668         use absolute dimension for @image.
2669
2670         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2671         out image for illustration too.
2672         ($(outdir)/%.png): add more png <-> eps rules. 
2673
2674 2006-05-17  Graham Percival  <gpermus@gmail.com>
2675
2676         * Documentation/user/ various: remove trailing whitespace, cosmetic
2677         change to reduce changes produced by diff.
2678
2679 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2680
2681         * lily/main.cc (do_chroot_jail): correctness tweak.
2682
2683         * python/lilylib.py (system): import subprocess in system () only.
2684
2685         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2686
2687         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2688         variable. Backportme.
2689
2690 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2691         
2692         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2693
2694 2006-05-17  Werner Lemberg  <wl@gnu.org>
2695
2696         * lily/lexer.ll (init_signature_has_table): Add
2697         `scm-scm-music-music'.
2698
2699         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2700         (Generic_prefix_music_scm): Add rule for it.
2701
2702         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2703         `quoted-transposition' property.
2704
2705         * ly/music-functions-init.ly (transposedCueDuring): New function.
2706
2707         * scm/define-music-properties.scm (all-music-properties): Updated.
2708
2709         * Documenation/topdocs/NEWS.itely: Document it.
2710
2711 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2712
2713         * python/lilylib.py (system): move import subprocess to system()
2714         definition. 
2715
2716         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2717
2718         * VERSION (PATCH_LEVEL): release 2.9.5
2719         
2720         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2721         build instructions. 
2722
2723         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2724
2725 2006-05-16  Graham Percival  <gpermus@gmail.com>
2726
2727         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2728
2729         * Documentation/user/ various: minor fixes.
2730
2731 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2732
2733         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2734
2735 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2736
2737         * Documentation/user/advanced-notation.itely (Instrument names):
2738         Modified obsolete instruction on how to move instrument names away
2739         from the staves. Hmm, at second thought the bug probably has been
2740         solved, so the full bug description should probably be removed.
2741
2742 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2743
2744         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2745         currentCommandColumn. 
2746
2747         * lily/hairpin.cc (print): also add padding for non-neighbor
2748         hairpin bounds.
2749
2750         * scm/define-context-properties.scm
2751         (all-user-translation-properties): add hairpinToBarline
2752
2753         * input/regression/hairpin-to-barline.ly: new file.
2754
2755         * lily/context.cc (internal_send_stream_event): thinko fix.
2756
2757         * lily/tie.cc (set_default_control_points): robustness fix.
2758
2759         * python/musicxml.py (Part.interpret): don't complain about
2760         incomplete measures.
2761
2762         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2763         new music if last_event_chord() returned None.
2764
2765         * python/musicxml.py (Part.interpret): skip back over chord notes.
2766
2767 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2768         
2769         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2770         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2771         lily/slash-repeat-engraver.cc,
2772         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2773         iterator sends PercentEvents
2774
2775         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2776         rework tuplets: send start/stop events to engraver
2777
2778         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2779         dispatchers event-source and events-below to Context
2780         
2781 2006-05-15  Graham Percival  <gpermus@gmail.com>
2782
2783         * Documentation/user/README.txt: update info for doc writers.
2784
2785         * Documentation/user/programming-interface.itely: integrate
2786         Nicolas' fixes for chapter rewrite.
2787
2788         * Documentation/user/ various: minor fixes.
2789
2790 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2791
2792         * lily/clef-engraver.cc: cleanup.
2793
2794         * Documentation/user/GNUmakefile: dist context-example.eps too.
2795
2796         * lily/key-engraver.cc (create_key): use
2797         explicitKeySignatureVisibility for cancellation too. 
2798
2799         * lily/font-config.cc (init_fontconfig): don't close file if
2800         f==NULL. 
2801
2802 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2803
2804         * Documentation/topdocs/NEWS.tely: niente and rotation news
2805
2806 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2807
2808         * lily/include/stencil.hh
2809         * lily/stencil.cc (rotate): new function. Makes it possible
2810         to rotate a stencil around a given offset.
2811
2812         * lily/grob.cc (get_print_stencil): add rotation support
2813
2814         * lily/stencil-interpret.cc (interpret_stencil_expression):
2815         add rotation support
2816
2817         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2818
2819         * scm/define-grob-properties.scm: add 'rotation property
2820
2821         * scm/define-markup-commands.scm: add rotate markup command
2822         
2823         * scm/output-ps.scm: add rotation support in PostScript backend
2824
2825         * scm/output-svg.scm: add rotation support in SVG backend
2826
2827 2006-05-13  Graham Percival  <gpermus@gmail.com>
2828
2829         * Documentation/user/music-glossary.itely: French correction.
2830
2831         * Documentation/user/programming-interface.itely: major
2832         new docs, some reorg, some info from Nicolas.
2833
2834         * Documentation/user/ various: small fixes.
2835
2836 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2837
2838         * Documentation/user/programming-interface.itely (Markup
2839         programmer interface): Remove duplicate text.
2840
2841 2006-05-12  Graham Percival  <gpermus@gmail.com>
2842
2843         * Documentation/user/context-example.eps: new file.
2844
2845         * Documentation/user/changing-defaults.itely: set up file to
2846         use eps image.
2847
2848         * Documentation/user/programming-interface.itely: changes
2849         from mailist.
2850
2851 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2852
2853         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2854
2855 2006-05-11  Graham Percival  <gpermus@gmail.com>
2856
2857         * Documentation/user/programming-interface.itely: first round of
2858         editing and merging emails from Nicolas.
2859
2860         * Documentation/user/scheme-tutorial: minor edit.
2861
2862 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2863
2864         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2865         XML attributes.
2866         (Xml_node.message): use it.
2867
2868         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2869         oops. Add duration argument.
2870
2871 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2872
2873         * lily/paper-column-engraver.cc (make_columns):
2874         * scm/define-grobs.scm: Revert my previous change and set the default
2875         in define-grobs.scm instead.
2876
2877 2006-05-09  Graham Percival  <gpermus@gmail.com>
2878         
2879         * Documentation/user/changing-defaults.itely: general editing,
2880         info about \set and \override.
2881
2882         * Documentation/user/tweaking.itely, advanced-notation.itely:
2883         fixes from Dave Luttinen, thanks!
2884
2885 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2886
2887         * lily/paper-column-engraver.cc (make_columns): By default, a column
2888         needs to be breakable.
2889
2890 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2891
2892         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2893         Attributes methods
2894         (musicxml_time_to_lily): idem
2895         (musicxml_key_to_lily): idem
2896         (instrument_drumtype_dict): dict for supported drumtypes.
2897         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2898         moments and pending mm rests
2899         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2900         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2901         (musicxml_voice_to_lily_voice): add mode change.
2902         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2903         speed and less memory usage (factor 5 to 10).
2904         (convert): write -defs.ly  and driver file separately so people
2905         can script their own part extraction.
2906
2907         * python/musicxml.py (minidom_demarshal_node): new function:
2908         separate minidom handling.
2909         (lxml_demarshal_node): new function: support lxml.etree too.
2910         (Xml_node.message): new function: verbose error message, with XML
2911         path to offending node.
2912         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2913         (Part_list.generate_id_instrument_dict): new method: collect
2914         instrument names, to be able to set drum_type.
2915         (Part.interpret): handle underfull measures
2916         (Part.interpret): assign instrument names.
2917
2918         * python/musicexp.py (Output_printer.close): new method
2919         (MusicWrapper.print_ly): new class: support other modes,
2920         eg. \drummode
2921         (BarCheck.print_ly): new class. Support bar checks, with comments
2922         and fancy barchecks. 
2923         (NoteEvent.__init__): also set drum_type for drum notes.
2924         (MultiMeasureRest.lisp_expression): dump mm rests.
2925
2926         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2927         line-break-permission if forbidBreak is not set.
2928
2929 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2930
2931         * scm/define-context-properties.scm:
2932         * scm/define-grob-properties.scm:
2933         * scm/define-grobs.scm:
2934         * scm/define-music-display-methods.scm:
2935         * scm/define-music-properties.scm:
2936         * scm/define-music-types.scm:
2937         * scm/music-functions.scm:
2938         * ly/declarations-init.ly:
2939         * lily/include/constrained-breaking.hh:
2940         * lily/system.cc:
2941         * lily/spaceable-grob.cc:
2942         * lily/simple-spacer.cc:
2943         * lily/paper-score.cc:
2944         * lily/paper-column.cc:
2945         * lily/paper-column-engraver.cc:
2946         * lily/item.cc:
2947         * lily/gourlay-breaking.cc:
2948         * lily/constrained-breaking.cc:
2949         * python/convertrules.py:
2950         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2951         "page-break-penalty" and "line-break-permission".
2952         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2953         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2954
2955         * lily/bar-engraver.cc:
2956         * lily/beam-engraver.cc:
2957         * lily/forbid-break-engraver.cc:
2958         * lily/ligature-engraver.cc:
2959         * lily/paper-column-engraver.cc:
2960         * lily/percent-repeat-engraver.cc:
2961         * lily/score-engraver.cc:
2962         * lily/score-engraver.hh:
2963         * lily/paper-column-engraver.hh:
2964         Inter-engraver communication regarding line breaks is done through context
2965         properties (Score.forbidBreak) instead of function calls.
2966
2967 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2968
2969         * VERSION (PACKAGE_NAME): release 2.9.4
2970
2971 2006-05-08  Graham Percival  <gpermus@gmail.com>
2972
2973         * Documentation/user/working.itely: proofreading from Dave
2974         Luttinen, thanks.
2975
2976         * Doucmentation/user/README.txt: updated with manual style info.
2977
2978         * Documentation/user/ various: trim linewidth to 78 chars.
2979
2980 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2981
2982         * scm/define-grob-properties.scm (all-internal-grob-properties):
2983         remove chord-tremolo property.
2984
2985         * lily/beam.cc (get_beam_segments): don't use stem position as
2986         base for broken ends.
2987
2988 2006-05-06  Graham Percival  <gpermus@gmail.com>
2989
2990         * Documentation/user/putting.itely: proofreading from Dave
2991         Luttinen, thanks!
2992
2993         * Documentation/user/ various: more reorg and clarifications.
2994
2995 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2996
2997         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2998
2999         * ly/music-functions-init.ly: new function featherDurations
3000
3001         * lily/beam.cc: read grow-direction for feathered beaming.
3002
3003         * Documentation/topdocs/NEWS.tely (Top): typo.
3004
3005 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3006
3007         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3008         tremolo beams.
3009
3010 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
3011         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3012         used by music streams.
3013
3014         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3015         lily/stream-event.cc, lily/stream-event-scheme.cc,
3016         lily/listener.cc, lily/scheme-listener.cc,
3017         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3018         lily/include/stream-event.hh, lily/include/listener.hh,
3019         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3020         Created data structures for music streams.
3021         
3022 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3023
3024         * lily/beam.cc (get_beam_segments): new function. Reorganise the
3025         construction of a beam. 
3026         (print): rewrite. 
3027
3028         * flower/include/std-vector.hh (default_compare): use only one comparison.
3029
3030         * scm/define-markup-commands.scm (note-by-number): remove debug display.
3031         (note-by-number): further attachment fixes.
3032
3033         * scm/lily-library.scm (ordered-cons): new function.
3034         (interval-index): new function
3035
3036         * lily/note-head-scheme.cc (LY_DEFINE): new file.
3037
3038         * lily/note-head.cc (get_stem_attachment): new function.
3039
3040         * scm/define-markup-commands.scm (note-by-number): read 'style
3041         property. 
3042
3043         * input/regression/markup-note.ly: show note-head style option.
3044
3045         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3046         triangle head.
3047
3048 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
3049
3050         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3051
3052         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3053
3054         * lily/include/constrained-breaking.hh: GCC 4 fix.
3055
3056 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
3057
3058         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3059         Replace it with functions get_line_forces and get_line_configuration.
3060         (class Simple_spacer): Make data private.
3061         Rewrite compression algorithm to be faster and simpler.
3062
3063         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3064         * lily/gourlay-breaking.cc (solve):
3065         * lily/constrained_breaking.cc (space_line):
3066         Change it to the new simple-spacer code.
3067
3068         * lily/paper-score.cc (get_paper_systems):
3069         (Paper_score):
3070         (process):
3071         Delay breaking the systems until they are requested.
3072         (find_break_indices):
3073         Use vsize for indices.
3074         (calc_breaking):
3075         Move the "Calculating line breaks" message here.
3076
3077         * lily/system.cc (pre_processing):
3078         Move the "Calculating line breaks" message away from here.
3079         (break_into_pieces):
3080         Allow multiple calls to this function in sequence (with touching-but-
3081         not-overlapping breakpoints).
3082
3083         * lily/constrained-breaking.cc:
3084         Replace most of the get_XXXX functions with get_line_details.
3085         Only calculate the force for each line. Calculate configurations only
3086         for the lines we will actually use.
3087         Replace cols_ with lines_.
3088
3089 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3090
3091         * mf/GNUmakefile (depth): remove FC_FIND.
3092
3093         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3094
3095         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3096
3097         * scm/framework-ps.scm (write-preamble): new function.
3098         (write-preamble): load mac fonts via fondu, even if gs-font-load
3099         is set.
3100
3101 2006-05-03  Werner Lemberg  <wl@gnu.org>
3102
3103         * mf/GNUmakefile (FC_FIND): Fix typo.
3104
3105 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
3106
3107         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3108
3109 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3110
3111         * stepmake/aclocal.m4: run python-config for crosscompiling
3112         flags. 
3113
3114         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3115         -f png for HTML, TEXINFO formats. 
3116
3117         * input/tutorial/lbook-html-test.html: new file.
3118
3119         * lily/include/tie-formatting-problem.hh (class
3120         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3121         [column, direction]. This fixes laissez vibrer ties.
3122  
3123         * flower/include/tuple.hh (struct Tuple2): new file.
3124
3125         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3126         $(FCMATCH), only if $(NCSB_DIR) not set. 
3127
3128         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3129
3130         * config.make.in (DOCUMENTATION): set FCMATCH.  
3131
3132         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3133
3134 2006-05-03  Graham Percival  <gpermus@gmail.com>
3135
3136         * Documentation/user/ various: final round of reorg.
3137
3138         * Documentation/user/instrument-notation.itely: some more
3139         fixes from Eduardo, thanks!
3140
3141 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3142
3143         * VERSION (PACKAGE_NAME): release 2.9.3
3144
3145         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3146
3147         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3148
3149 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3150
3151         * scm/define-grob-properties.scm (all-user-grob-properties):
3152         Correct typo, thanks to Eduardo.
3153
3154 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3155
3156         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3157
3158         * buildscripts/lilypond-words.py (F): indent fix.
3159
3160         * input/regression/tie-arpeggio-collision.ly: new file.
3161
3162         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3163         function: store outlines per column rank.
3164
3165         * lily/include/tie-configuration.hh (class Tie_configuration): add
3166         column_ranks_ to specification and configuration, to distinguish
3167         between ties for different heads in arpegiated chords.
3168
3169         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3170
3171         * *.py: more 4 space indents.
3172
3173         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3174
3175 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3176
3177         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3178
3179 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3180
3181         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3182
3183         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3184
3185         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3186
3187 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3188
3189         * python/convertrules.py (conv): indent 4 for python files.
3190
3191 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3192
3193         * Documentation/user/changing-defaults.itely (Creating contexts):
3194         Clarify \new semantics.
3195
3196 2006-04-28  Graham Percival  <gpermus@gmail.com>
3197
3198         * Documentation/user/ various: major new sections in the
3199         Learning manual, slight reorg elsewhere.
3200
3201 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3202
3203         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3204
3205         * scm/framework-ps.scm (output-framework): remove PageMedia
3206
3207 2006-04-27  Graham Percival  <gpermus@gmail.com>
3208
3209         * Documentation/user/ tweaks.itely, working.itely: new
3210         files, being more advanced "learning manual" chapters.
3211
3212         * Documentation/user/ tutorial, putting, lilypond: reorg.
3213
3214 2006-04-26  Graham Percival  <gpermus@gmail.com>
3215
3216         * input/regression/lyric-combine-polyphonic.ly: fixed test
3217         (no more "can't find context `one'" error).
3218
3219 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3220
3221         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3222
3223         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3224         
3225 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3226
3227         * lily/relocate.cc (read_relocation_dir): new function.
3228
3229 2006-04-26  Graham Percival  <gpermus@gmail.com>
3230
3231         * Documentation/user/instrument-notation.itely: a few more fixes
3232         from Eduardo, thanks!
3233
3234         * Documentation/user/README.txt: new file; contains info on
3235         style that used to be in lilypond.tely.
3236
3237         * Documentation/user/ various: first round of doc reorg.
3238
3239         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3240         graphic; this probably causes problems on some pdf
3241         viewers, notably Adobe Acrobat.
3242
3243 2006-04-24  Graham Percival  <gpermus@gmail.com>
3244
3245         * Documentation/user/instrument-notation.itely: many alterations
3246         to Vocal music, from Eduardo Viera.
3247
3248 2006-04-23  Graham Percival  <gpermus@gmail.com>
3249
3250         * Documentation/user/instrument-notation.itely: fix \new
3251         instead of \context problem.
3252
3253 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3254
3255         * lily/relocate.cc (expand_environment_variables): new function.
3256         (read_line): id.
3257         (read_relocation_file): id.
3258
3259         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3260
3261 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3262
3263         * ly/engraver-init.ly: remove old comments from TabVoice
3264
3265 2006-04-20  Graham Percival  <gpermus@gmail.com>
3266
3267         * Documentation/user/instrument-notation.itely: added Erlend's
3268         latest doc patch, thanks!
3269
3270 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3271
3272         * lily/include/slur.hh:
3273         * lily/slur.cc:
3274         * lily/phrasing-slur-engraver.cc:
3275         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3276         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3277         Slur_engraver:: and putting it in
3278         Slur::auxiliary_acknowledge_extra_object ().
3279
3280         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3281
3282         * lily/note-collision.cc: fix a comment
3283
3284 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3285
3286         * stepmake/bin/add-html-footer.py: fix footer position in
3287         generated html files: before </body> and </html> tags.
3288
3289 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3290
3291         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3292         Earlier successive `make' commands finally compiled ok.
3293
3294         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3295
3296 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3297
3298         * lily/include/stem-tremolo.hh:
3299         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3300         callers.
3301
3302         * lily/lookup.cc:
3303         * lily/include/lookup.hh: add rotated_box ()
3304
3305 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3306
3307         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3308         been generated. Fixes "can't get `--help'" bug after make clean.
3309
3310         * THANKS: alphabetize contributors.
3311
3312 2006-04-17  Graham Percival  <gpermus@gmail.com>
3313
3314         * Documentation/user/instrument-notation.itely: added Erlend's
3315         tabs and banjo doc patch.  Thanks!
3316
3317 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3318
3319         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3320
3321         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3322
3323         * scm/output-lib.scm: add some more predefined string tunings.
3324
3325         * Documentation/user/instrument-notation.itely: and doc them.
3326
3327 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3328
3329         * ly/engraver.ly: Remove obsolete comments.
3330
3331         * ly/gregorian-init.ly: Define default layout block.
3332
3333         * input/puer-fragment.ly: Updated and extended.
3334
3335 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3336
3337         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3338         pdf conversion behaviour.
3339
3340         * flower/file-name.cc (dir_name)
3341         (get_working_directory): Move from relocate.cc.
3342
3343         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3344         
3345         * lily/relocate.cc: Encapsulate sys/stat.h in
3346         HAVE_STAT_H.
3347
3348 2006-04-14  Graham Percival  <gpermus@gmail.com>
3349
3350         * Documentation/user/ various: small updates from Cameron
3351         and Juergen, thanks!
3352
3353         * Documentation/user/ various: small updates of my own.
3354
3355         * THANKS: 2.7 -> 2.8.
3356
3357 2006-04-11  Graham Percival  <gpermus@gmail.com>
3358
3359         * scm/define-context-properties.scm: typo.
3360
3361         * Documentation/user/ : many more small updates.
3362
3363 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3364
3365         * scm/define-music-types.scm: disposed "docme".
3366
3367 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3368
3369         * lily/hairpin.cc: make niente circles a bit smaller.
3370
3371 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3372
3373         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3374         get-pfa and get-*-fonts targets.
3375
3376 2006-04-10  Graham Percival  <gpermus@gmail.com>
3377
3378         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3379         music-glossary, programming-interface: more minor fixes
3380         from mailist.
3381
3382         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3383
3384         * scm/define-context-properties.scm: another old \property update.
3385         This time tested for compiling!
3386
3387 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3388
3389         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3390
3391 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3392
3393         * scm/define-context-properties.scm (all-user-translation-properties): 
3394         * Documentation/user/global.itely (Page formatting): Compile fix.
3395
3396 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3397
3398         * Documentation/user/advanced-notation.itely (Polymetric
3399         notation): Update the example to use the "+" symbol and add link
3400         to input/test/compound-time.ly.
3401
3402 2006-04-08  Graham Percival  <gpermus@gmail.com>
3403
3404         * scm/define-grob-properties.scm: clarify docs for #'direction.
3405
3406         * scm/define-context-properties.scm: update old \property override.
3407
3408         * Documentation/user/ advanced-notation, global, lilypond-book:
3409         more minor doc updates.
3410
3411 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3412
3413         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3414
3415         * scm/backend-library.scm (search-gs): oops.
3416
3417 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3418
3419         * scripts/lilypond-book.py (output): use base, not filename for href.
3420
3421         * scm/backend-library.scm: only look for gs.
3422
3423         * scripts/lilypond-book.py (output): fix printfilename.
3424
3425         * lily/parser.yy (music_function_musicless_prefix): fold together
3426         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3427
3428         * lily/slur.cc (print): only set font-size if not set yet.
3429
3430         * lily/slur-configuration.cc (add_score): improved layout of debug
3431         scoring output.
3432
3433 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3434
3435         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3436         (draw_circle): Hopefully fixed regression.
3437         Improved documentation for several procedures.
3438         
3439 2006-03-04  Werner Lemberg  <wl@gnu.org>
3440
3441         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3442
3443 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3444
3445         * scripts/musicxml2ly.py (bindir): add dynamic
3446         relocation. 
3447
3448 2006-04-04  Graham Percival  <gpermus@gmail.com>
3449
3450         * Documentation/user/ basic-notation, advanced-notation, putting,
3451         instrument-notation, invoking, lilypond, THANKS: another ream of small
3452         fixes from the Doc Helpers.
3453
3454 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3455
3456         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3457
3458         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3459
3460         * Cleaned up interfaces between PostScript and Scheme, and moved
3461         computations from PostScript to Scheme:
3462
3463         * music-drawing-routines.ps
3464         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3465         with stroke_and_fill throughout.
3466         (euclidean_length, print_letter, draw_box): Deleted unused
3467         procedures.  If someone needs draw_box, implement it using
3468         draw_round_box; don't duplicate code.
3469         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3470         Refactored/cleaned up interfaces.
3471         (mark_URI): Moved.
3472
3473         * output-ps.scm: reordered arguments to PostScript functions to
3474         match new interfaces
3475         (glyph-string): Rewrote glyph-string.
3476         (grob-cause): Replaced string-append with format.
3477         (repeat-slash): Rewrote to do computation here.
3478         (round-filled-box): Rewrote to do computation here.
3479
3480 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3481
3482         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3483
3484         * stepmake/stepmake/toplevel- targets.make: print help info about
3485         cvs-clean
3486
3487 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3488
3489         * input/regression/hairpin-circled.ly: new file
3490
3491 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3492
3493         * lily/hairpin.cc (print): add support for circled tip
3494
3495         * scm/define-grob-properties.scm: add circled-tip parameter
3496
3497         * scm/define-grobs.scm: init circled-tip to false
3498         
3499 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3500
3501         * scm/music-functions.scm (quote-substitute): set
3502         iterators-ctor. 
3503
3504 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3505
3506         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3507         BSTINPUTS. 
3508
3509         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3510
3511         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3512
3513 2006-03-31  David Feuer  <david.feuer@gmail.com>
3514         
3515         * scm/framework-ps.scm:
3516         
3517         * scm/output-ps.scm: glyph-string now produces smaller, more
3518         readable, and probably faster PostScript.  Several findfont
3519         scalefont setfont instances changed to selectfont
3520         Hacked-up string-appends changed to formats.
3521
3522         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3523         
3524 2006-03-30  Graham Percival  <gpermus@gmail.com>
3525
3526         * scm/lily-library.scm: make "no version" warning message more polite.
3527
3528         * lily/music.cc: add double quotes to failed octave check.
3529
3530         * Documentation/user/ advanced-notation, changing-defaults,
3531         instrument-notation, invoking, music-glossary: whole bunch of minor
3532         fixes from mailist.
3533
3534 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3535
3536         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3537         $(buildscriptdir) iso. depth.
3538
3539         * VERSION (PACKAGE_NAME): release 2.9.1
3540
3541 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3542
3543         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3544
3545         * VERSION (PATCH_LEVEL): bump version number.
3546
3547         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3548         scm_from_uint32 ()
3549
3550         * lily/pango-font.cc (pango_item_string_stencil): use
3551         scm_from_uint32 ()
3552
3553         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3554         $(outdir)/emmentaler-%.svg): remove canary.
3555
3556         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3557         glyphnames if we have a ttf font.
3558
3559 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3560
3561         * Documentation/user/advanced-notation.itely (Font selection):
3562         Corrected reference to the font-family-override.ly example.
3563
3564 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3565         
3566         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3567         stem-tremolo object in the stem (or else the stem might not be
3568         long enough).
3569
3570 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3571
3572         * lily/ttf.cc (print_trailer): only print existing glyphs.
3573
3574 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3575
3576         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3577         position the tremolo based on the position of the notehead.
3578
3579         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3580         notes and update the texidoc line with the new positioning rules.
3581         
3582 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3583
3584         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3585
3586         * scripts/lilypond-book.py (Module): set default for linewidth if
3587         preamble not found.
3588
3589 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3590
3591         * VERSION (PACKAGE_NAME): release 2.9.0.
3592
3593         * input/regression/stem-tremolo-position.ly: new file.
3594
3595         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3596
3597 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3598
3599         * lily/stem-tremolo.cc (print): position
3600         the tremolo depending only on the end of the stem
3601         and not on the notehead
3602         (raw_stencil): center, on the middle staff line, the
3603         flag that is closest to the end of the stem (previously
3604         the bottom flag)
3605         (calc_width): add this callback to shorten a tremolo when
3606         it is beamed or it is stemup with a flag
3607         (style): add this callback to make a tremolo rectangular when
3608         it is beamed or it is stemup with a flag
3609         (rotated_box): this is like Lookup::beam but makes a rotated
3610         rectangle instead of a parallelogram
3611
3612         * lily/stem.cc (calc_stem_info): make sure the stem
3613         is long enough to fit the tremolo
3614         (calc-length): reduce the length of tremolo stems since the
3615         tremolo code is now capable of better positioning
3616
3617         * scm/define-grobs.scm: make calc_width the default beam-width
3618         callback for stem-tremolo and add the style callback
3619                 
3620 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3621
3622         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3623         case. 
3624
3625 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3626
3627         * lily/ttf.cc (make_index_to_charcode_map): restore old
3628         cmap. 
3629
3630 2006-03-28  Werner Lemberg  <wl@gnu.org>
3631
3632         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3633
3634 2006-03-28  Graham Percival  <gpermus@gmail.com>
3635
3636         * THANKS: update for 2.9, add section for Documentation helpers.
3637
3638         * Documentation/topdocs/NEWS.tely: compile fix.
3639
3640         * Documentation/user/ basic-notation, global, advanced-notation,
3641         examples.itely: minor fixes from mailist.
3642
3643 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3644
3645         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3646         note heads. 
3647
3648         * lily/ttf.cc (print_trailer): use it.
3649
3650         * lily/pango-font.cc (get_unicode_name): new function.
3651
3652         * lily/ttf.cc (make_index_to_charcode_map): move function from
3653         open-type-font.cc
3654         (print_trailer): substitute uniXXXX name if applicable. 
3655
3656         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3657         (pango_item_string_stencil): use it to generate uniXXXX names.
3658
3659         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3660         note heads, for uniform widths in shape note output.
3661         (overdone_heads): hmm. remove them again.
3662
3663         * scripts/lilypond-book.py (output): add links to filenames.
3664
3665         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3666
3667         * lily/note-collision.cc (get_clash_groups): only consider when
3668         Note_column::dir <> CENTER. 
3669
3670         * scripts/lilypond-book.py (get_option_parser): init output_name
3671         to ''. 
3672
3673 2006-03-24  Graham Percival  <gpermus@gmail.com>
3674
3675         * Documentation/topdocs/NEWS.tely: add @end itemize
3676
3677         * Documentation/user/ global, advanced-notation: minor
3678         stuff from mailist.
3679
3680 2006-03-23  Graham Percival  <gpermus@gmail.com>
3681
3682         * Documentation/user/ lilypond.tely, music-glossary,
3683         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3684
3685 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3686
3687         * mf/GNUmakefile: don't install .enc files.
3688
3689         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3690
3691         * VERSION (PATCH_LEVEL): bump to 2.9.0
3692
3693 2006-03-22  Graham Percival  <gpermus@gmail.com>
3694
3695         * Documentation/user/advanced-notation.itely: minor fixes
3696         from mailist.
3697
3698 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3699
3700         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3701
3702         * branch lilypond_2_8
3703
3704 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3705
3706         * scripts/lilypond-book.py (samefile): new function, for windoze
3707         compatibility.
3708
3709 2006-03-21  Graham Percival  <gpermus@gmail.com>
3710
3711         * ly/engraver-init.ly: add info about StaffGroup.
3712
3713 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3714
3715         * input/regression/stem-direction-context.ly: idem.
3716
3717         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3718
3719         * THANKS: add Mats.
3720
3721         * input/regression/page-layout-twopass.ly: comment out \markup so
3722         tweak-file is left.
3723
3724         * lily/instrument-name-engraver.cc (finalize): add to instrument
3725         name global System. This also fixes chopped instrument names, but
3726         doesn't crash when there are slurs/beams.
3727
3728         * lily/slur-configuration.cc (add_score): disallow negative slur
3729         scores.
3730         
3731 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3732
3733         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3734
3735         * lily/instrument-name-engraver.cc (process_music): kludge: add
3736         InstrumentName spanner to axis group of left bound. Fixes chopped
3737         off instrument names in EPS images.
3738
3739         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3740
3741         * scripts/abc2ly.py (option_parser): update to 2.7.40
3742
3743 2006-03-20  Graham Percival  <gpermus@gmail.com>
3744
3745         * THANKS: move small doc contributors to SUGGESTIONS.
3746
3747         * Documentation/user/ basic-notation, advanced-notation,
3748         global: small changes from mailist.
3749
3750 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3751
3752         * Documentation/user/advanced-notation.itely (Text marks): update
3753         for new rehearsalMarkAlignSymbol convention.
3754
3755         * VERSION (PATCH_LEVEL): bump version.
3756
3757         * input/test/instrument-name-align.ly: new file.
3758
3759         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3760
3761         * input/test/instrument-name-align.ly: new file. Document how to
3762         align instrument names.
3763
3764         * lily/mark-engraver.cc: remove properties.
3765
3766         * scm/define-context-properties.scm
3767         (all-user-translation-properties): remove align symbol properties
3768         for barnumber/reh. mark.
3769
3770         * lily/break-align-interface.cc (self_align_callback): new
3771         interface, new function. Look at complete alignment. This handles
3772         tunable break alignments in case break-align-symbols are missing.
3773
3774         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3775
3776         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3777
3778         * python/convertrules.py (conv): mark/bar number alignment rule.
3779
3780         * lily/break-align-interface.cc (calc_positioning_done): also
3781         store offset from last visible break-alignment to its
3782         neighbor. This makes alignment on non-visible objects more reliable.
3783
3784         * po/lilypond.pot (Module): ran po-replace.
3785
3786         * input/regression/tie-single-manual.ly (Module): new file.
3787
3788         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3789         look at has_manual_position_.
3790         (from_ties): set has_manual_position_ if tie has staff-position set.
3791
3792         * lily/tuplet-bracket.cc (calc_positions): idem.
3793
3794         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3795         doesn't span time.
3796
3797 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3798
3799         * scm/define-markup-commands.scm (smallCaps): new markup command
3800         for turning a text to small caps using smaller font size and upper
3801         casing.
3802
3803 2006-03-17  Graham Percival  <gpermus@gmail.com>
3804
3805         * Documentation/user/ examples, instrument-notation,
3806         advnaced-notation: minor fixes from mailist.
3807
3808 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3809
3810         * Documentation/user/tutorial.itely (First steps): change example
3811         to verbatim.  
3812
3813 2006-03-17  Graham Percival  <gpermus@gmail.com>
3814
3815         * Documentation/user/ examples, advanced: minor changes from mailist.
3816
3817         * THANKS: add Geoff Horton, for documentation stuff.
3818
3819 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3820
3821         * python/lilylib.py (system): revert have_select kludge.
3822
3823         * Documentation/user/tutorial.itely (Commenting input files):
3824         update version numbers in doc. 
3825
3826         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3827         bound-padding to multi-measure-interface
3828
3829 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3830
3831         * input/test/engraver-example.ily: update version number.
3832
3833         * VERSION (PACKAGE_NAME): release 2.7.39
3834
3835         * lily/note-spacing.cc (get_spacing): heighten threshold where
3836         accidentals/arpeggios influence previous spacing fully.
3837
3838         * lily/rest.cc (y_offset_callback): only use direction if
3839         staff-position wasn't set before.
3840
3841         * lily/bar-number-engraver.cc: add support for
3842         barNumberAlignSymbol. 
3843         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3844
3845         * lily/pointer-group-interface.cc (set_ordered): new function. 
3846         (add_unordered_grob): new function.
3847
3848         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3849         to ordered, unless the opposite has been proved.  This fixes
3850         random reordering of large object groups across linebreaks,
3851         eg. beams.
3852
3853         * lily/main.cc (do_chroot_jail): printf format fix.
3854
3855         * lily/tie-formatting-problem.cc (generate_configuration):
3856         multiply y-shift for dot with direction.
3857  
3858         * scm/define-markup-commands.scm (note-by-number): put (magstep
3859         size) in y-attach too.
3860
3861         * Documentation/topdocs/NEWS.tely (Top): show override.
3862
3863         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3864         direction for stems.
3865         
3866 2006-03-15  Graham Percival  <gpermus@gmail.com>
3867
3868         * Documentation/user/ changing-defaults, global: minor
3869         fixes from mailist.
3870
3871 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3872
3873         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3874
3875         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3876         breakable items after uniformly stretched notes.
3877
3878         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3879         outline with outer edge of note heads. This prevents infinity
3880         problems with tied whole notes.
3881
3882         * scripts/lilypond-book.py (do_file): use os.popen
3883
3884         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3885
3886 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3887
3888         * Documentation/user/invoking.itely: Add ragged-right to bug report
3889         guidelines.
3890
3891 2006-03-14  Graham Percival  <gpermus@gmail.com>
3892
3893         * Documentation/user/global.itely: small fix from mailist.
3894
3895 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3896
3897         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3898         file descriptor returned by tempfile.mkstemp() when writing
3899         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3900         on mingw.
3901
3902 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3903
3904         * po/fi.po: newline bugfix.
3905
3906 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3907
3908         * scm/paper.scm (paper-alist): Rounding fixes.
3909
3910 2006-03-13  Graham Percival  <gpermus@gmail.com>
3911
3912         * Documentation/user/ changing-defaults, instrument-notation,
3913         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3914
3915 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3916
3917         * po/fi.po: update.
3918
3919 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3920
3921         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3922         mailto: to http:// 
3923
3924         * python/lilylib.py (print_environment): move ps_page_count to
3925         lilypond-book.py
3926
3927 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3928
3929         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3930
3931         * scm/framework-ps.scm (embed-document): new function. Use to
3932         embed PFA files.
3933
3934         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3935
3936 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3937
3938         * Documentation/user/instrument-notation.itely (Setting simple
3939         songs): Added \book{...} around the full example, so the separate
3940         markups are included in the printed example. 
3941
3942 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3943
3944         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3945         tmphandle.
3946
3947         * python/lilylib.py (system): rewrite system() using
3948         subprocess. Remove >& redirection trickery.
3949
3950 2006-03-11  Graham Percival  <gpermus@gmail.com>
3951
3952         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3953         notation-appendices.itely: minor fixes from mailist.
3954
3955 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3956
3957         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3958         unsplit man also needs images.
3959
3960         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3961
3962         * VERSION (PACKAGE_NAME): 2.7.38 released.
3963
3964 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3965
3966         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3967         log in output dir.
3968
3969 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3970
3971         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3972         respects the Score.skipTypesetting property.
3973         
3974 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3975
3976         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3977         Prolog. No %%EOF after CFF file.
3978
3979 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3980         
3981         * lily/constrained-breaking.cc (get_max_systems): used to return a
3982         much too big value
3983         (combine_demerits): use pointers to reduce copying data
3984         (calc_subproblem): idem
3985         (get_page_penalty): add page turn penalties
3986         
3987 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3988
3989         * Documentation/user/invoking.itely (Invoking lilypond): better
3990         explanation of -e usage.
3991
3992         * lily/main.cc (main_with_guile): don't append to
3993         init_scheme_code_string
3994
3995         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3996
3997         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3998
3999         * scripts/convert-ly.py (do_options): don't print help for
4000         --show-rules rule.
4001
4002         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4003         @code and @example. Update from texinfo.tex from CVS.
4004
4005 2006-03-08  Graham Percival  <gpermus@gmail.com>
4006
4007         * Documentation/user/scheme-tutorial.itely: clarifies distances
4008         measured in staff-spaces.
4009
4010 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4011
4012         * lily/slur.cc (outside_slur_callback): only calculate offsets if
4013         consider[k] is true.
4014
4015         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4016
4017         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4018         consider columns that have originals.  Unifies spacing for mm
4019         rests around line breaks.
4020
4021         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4022         (set_text_rods): idem.
4023         (calculate_spacing_rods): new function: share code between
4024         set_text_rods and set_spacing_rods.
4025         (set_text_rods): take extents of bounds into account.  
4026
4027 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4028
4029         * Documentation/user/basic-notation.itely (Writing music in
4030         parallel): don't use relative.
4031
4032 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4033
4034         * ly/music-functions-init.ly (Module): add shiftDurations
4035
4036         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4037
4038         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
4039
4040         * ly/engraver-init.ly: init vocalName to nil.
4041
4042 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
4043
4044         * scm/music-functions.scm (music->make-music): bugfix,
4045         KeyChangeEvents are now handled correctly.
4046
4047         * scripts/lilypond-book.py: Add --debug option.
4048
4049 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4050
4051         * python/lilylib.py: add tempfile.
4052
4053 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4054
4055         * VERSION (PACKAGE_NAME): release 2.7.37
4056
4057         * python/lilylib.py (ps_page_count): remove make_ps_images().
4058         (ps_page_count): remove mkdir_p
4059         (system): remove cleanup_temp.
4060         (exit): remove lilypond_version_(check)
4061         (error_log): remove pseudo_filter_p
4062         remove read_pipe
4063         remove cp_to_dir
4064         remove identify
4065
4066         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4067         use __main__
4068
4069         * lily/accidental-engraver.cc (make_standard_accidental): only add
4070         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4071
4072         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4073         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4074         Make incompatibilities.
4075
4076         * scm/output-ps.scm (grob-cause): replace backslashes by /
4077         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4078
4079 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4080
4081         * cygwin/GNUmakefile: Install fixes.
4082
4083         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4084
4085         * lily/note-head.cc (head::get_balltype): Compile fix.
4086
4087         * flower/file-name.cc (dos_to_posix): Flower string fix.
4088
4089 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4090
4091         * python/lilylib.py: pychecker cleanups.
4092
4093         * scripts/lilypond-book.py
4094         (Lilypond_snippet.output_print_filename): pychecker cleanups
4095
4096         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4097
4098         * python/lilylib.py (underscore): remove identify() , warranty()
4099
4100         * ps/music-drawing-routines.ps: change Border routine for GSView
4101         compatibility.
4102
4103         * lily/stem.cc (height): use quantize-positions.  This triggers
4104         set_stem_lengths, so scripts on beamed stems are handled correctly.
4105
4106         * lily/side-position-interface.cc (aligned_side): check if edges
4107         of script are inside staff. Fixes accent of edge of the staff.
4108
4109         * input/regression/staccato-pos.ly: more examples.
4110
4111         * stepmake/aclocal.m4 (depth): fix bashism.
4112
4113         * lily/lyric-combine-music-iterator.cc: move from
4114         new-lyric-combine-iterator.cc
4115         (process): add pending_grace_lyric_ member to delay lyrics on
4116         grace notes.
4117
4118         * lily/system-start-text.cc (print): suicide if we don't have any
4119         elements. Fixes hara kiri'd instrument names.
4120
4121         * scripts/mup2ly.py (Module): remove.
4122
4123 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4124
4125         * Documentation/user/global.itely (A single music expression):
4126         close @lilypond properly
4127
4128         * lily/volta-bracket.cc (modify_edge_height): change from
4129         after_line_breaking_callback. Suicide last bracket if appropriate.
4130  
4131         * python/lilylib.py: strip getopt support
4132
4133         * scripts/etf2ly.py (do_options): use optparse
4134
4135         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4136
4137         * scripts/abc2ly.py (voices): use optparse.
4138
4139         * stepmake/stepmake/generic-vars.make: new function absdir.
4140
4141         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4142
4143         * scripts/lilypond-book.py (find_file): use global_options for
4144         include path
4145
4146         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4147         entering C code.
4148
4149 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4150
4151         * python/lilylib.py (get_global_option): ughness for extracting
4152         global options from lilylib.
4153         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4154
4155         * scripts/lilypond-book.py (get_option_parser): use optparse for
4156         option handling.  Put options in global_options variable.
4157
4158 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4159
4160         * Documentation/index.html.in: clarify.
4161
4162 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4163
4164         * scm/layout-page-layout.scm (write-page-breaks): add a
4165         music-system-heights property to the page layout output.
4166
4167         * scm/page.scm (make-page-stencil): take footer into account when
4168         computing the 'space-left page property
4169         (annotate-space-left): take footer into account when annonating
4170         space left.
4171
4172 2006-02-28  Graham Percival  <gpermus@gmail.com>
4173
4174         * Documentation/user/ advanced-notation, global: more (final)
4175         docs for music expressions, removed special fermatas.
4176
4177 2006-02-27  Graham Percival  <gpermus@gmail.com>
4178
4179         * Documentation/user/ basic-notation, global: minor changes
4180         from mailist.
4181
4182 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4183
4184         * scm/framework-ps.scm:         
4185         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4186         layer for inf? and nan? from framework-ps to lily-library.
4187
4188 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4189
4190         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4191         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4192
4193         * buildscripts/substitute-encoding.py (Module): remove file.
4194
4195         * mf/GNUmakefile: more PFA strippage.
4196
4197         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4198
4199         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4200         generation
4201
4202         * scm/framework-ps.scm: remove font name munging.
4203
4204         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4205
4206 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4207
4208         * scm/markup.scm (define-markup-command): change
4209         def-markup-command to define-markup-command
4210
4211         * scm/music-functions.scm (define-music-function): change
4212         def-music-function to define-music-function.
4213
4214         * python/convertrules.py (conv): rules for def-music-function
4215         and def-markup-commands
4216
4217         * Documentation/user/programming-interface.itely,
4218         input/no-notation/display-lily-tests.ly,
4219         input/regression/lily-in-scheme.ly,
4220         input/regression/markup-user.ly,
4221         input/regression/music-function.ly, input/regression/tie-chord.ly,
4222         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4223         ly/gregorian-init.ly: use new macro names (define-music-function,
4224         define-markup-command).
4225
4226 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4227
4228         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4229         (output): add comments to lp-book latex output.
4230
4231         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4232         address.
4233
4234 2006-02-23  Graham Percival  <gpermus@gmail.com>
4235
4236         * Documentation/user/ tutorial, global: minor changes.
4237
4238 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4239
4240         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4241         blocks (for make 3.80)
4242
4243         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4244         \notemode so that user should not have to explicitely type it.
4245
4246         * scm/define-music-display-methods.scm: various
4247         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4248         constructs)
4249
4250         * input/no-notation/display-lily-tests.ly: new tests for
4251         \applyOutput and \applyContext
4252
4253 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4254
4255         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4256         changed it slightly so that the number of systems returned by
4257         solve () will be the same as the last value passed to resize
4258         (). I've also added more documentation, removed casts, fixed style
4259         problems and put in some recovery if constraints aren't satisfied."
4260
4261 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4262
4263         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4264         for emacs < 22 compatibility.
4265         (count-rexp): Use it.
4266         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4267         substring juggling (Milan Zamazal).
4268
4269 2006-02-23  Graham Percival  <gpermus@gmail.com>
4270
4271         * Documentation/user/ basic-notation, advanced-notation,
4272         global.itely, invoking.itely, tutorial,itely:
4273         minor fixes from mailist.
4274
4275         * scm/define-markup-commands.scm: improve docs of \filled-box.
4276
4277 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4278
4279         * Documentation/index.html.in: changes concern the previous release.
4280
4281         * input/regression/+.ly: cultivate typographical terminology.
4282
4283 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4284
4285         * scm/define-grob-interfaces.scm (parentheses-interface): add
4286         padding to parentheses-interface.
4287
4288         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4289         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4290
4291         * VERSION (PATCH_LEVEL): release 2.7.36
4292
4293         * lily/slur.cc: add avoid-slur (ugh.)
4294         
4295         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4296         intersection gets smaller. This fixes slurs over extreme points.
4297
4298         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4299         stems with neutral-direction set.
4300
4301         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4302
4303         * lily/open-type-font.cc (load_table): format error.
4304
4305         * lily/change-iterator.cc (process): format fix.
4306
4307         * flower/include/international.hh (_f): idem.
4308
4309         * flower/include/std-string.hh: add format printf attribute.
4310
4311         * scm/define-grobs.scm (all-grob-descriptions): height of all
4312         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4313
4314         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4315         ambitus lines.
4316
4317         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4318
4319 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4320
4321         * input/regression/: upgraded syntax for some files.
4322
4323         * THANKS: Add bughunters.
4324
4325 2006-02-22  Graham Percival  <gpermus@gmail.com>
4326
4327         * Documentation/user/ invoking.itely, advanced-notation.itely,
4328         global.itely: long-awaited "let's make chapter 10 not suck"
4329         update.  Rearrange chapter 10; now called "global issues",
4330         addresses file structure, etc.  Some info from other files
4331         moved into global.itely.
4332
4333 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4334
4335         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4336         catch trill-span-event notes.
4337
4338         * Documentation/user/examples.itely (Ancient notation templates): typo.
4339         (Jazz combo): typo.
4340
4341         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4342
4343         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4344
4345         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4346
4347         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4348
4349         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4350         froum Laissez_vibrer_engraver.
4351
4352         * ly/declarations-init.ly (repeatTie): add \repeatTie
4353
4354         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4355
4356         * scm/define-grob-properties.scm (all-user-grob-properties): add
4357         head-direction property.
4358
4359         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4360         from_lv_ties. Take head direction argument.
4361
4362         * lily/semi-tie-column.cc: rename from
4363         laissez-vibrer-tie-column.cc. Rename class too.
4364
4365         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4366         class too.
4367
4368         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4369
4370         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4371         0 case.
4372         (find_breaks): idem.
4373
4374 2006-02-21  Graham Percival  <gpermus@gmail.com>
4375
4376         * Documentation/user/advanced-notation.itely: fixed make-moment]
4377         example.
4378
4379         * Documentation/user/basic-notation.itely: more clarification to
4380         transpose.
4381
4382 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4383
4384         * lily/include/constrained-breaking.hh (class
4385         Constrained_breaking): new file.
4386
4387         * lily/constrained-breaking.cc (resize): new file.
4388
4389         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4390
4391         * Documentation/user/advanced-notation.itely (Clusters): insert
4392         end ignore too.
4393
4394         * lily/tie-column.cc (calc_positioning_done): support for
4395         tie-score debugging
4396
4397         * lily/tie-formatting-problem.cc
4398         (generate_extremal_tie_variations): factor out.
4399         (score_ties_configuration): annotate all tie 
4400         (print_ties_configuration): new routine.
4401         (generate_configuration): nudge extremal ties outside of the head
4402         Y extents.
4403         (score_ties_configuration): oops. convert to staff-space before
4404         determining position symmetry.
4405
4406 2006-02-20  Graham Percival  <gpermus@gmail.com>
4407
4408         * Documentation/user/*-notation.itely: misc minor editing,
4409         shifting doc sections around.
4410
4411         * Documentation/user/*-notation-itely, global.itely,
4412         changing-defaults.itely: added new stuff from NEWS.
4413
4414 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4415
4416         * po/fi.po: update.
4417
4418 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4419
4420         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4421         lilypond --verbose for lp-book.
4422
4423         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4424         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4425
4426         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4427         $(buildscript-dir) iso. absolute depth.
4428
4429         * buildscripts/genicon.py (dir): thinko.
4430
4431         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4432
4433 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4434
4435         * scm/output-lib.scm: swap darkcyan/darkyellow
4436
4437         * THANKS: Add bughunters.
4438
4439 2006-02-19  Graham Percival  <gpermus@gmail.com>
4440
4441         * Documentation/user/programming-interfaces.itely: fixed example.
4442
4443         * Documentation/user/instrument-notation.itely: fix @{ @}.
4444
4445         * scm/script.scm: add avoid-slur for \open.
4446
4447 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4448
4449         * lily/tie-formatting-problem.cc (score_configuration): use
4450         sliding score for min-length. 
4451
4452         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4453         spaghetti for icons.
4454
4455         * buildscripts/genicon.py (program_name): new file.
4456
4457         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4458         in outline too.  
4459         (generate_configuration): for small ties, also look for collisions
4460         at Y + DIR*h + DELTA_Y.
4461         (get_variations): consider variation for dot positions too.
4462
4463         * lily/side-position-interface.cc (aligned_side): take abs for
4464         quantized rounded position. Fixes tenuto below staff.
4465
4466         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4467         markers when necessary.
4468
4469         * lily/program-option.cc (internal_set_option): add
4470         strict_infinity_checking option.
4471
4472         * scm/output-lib.scm (cyan): swap yellow and cyan.
4473
4474 2006-02-19  Graham Percival  <gpermus@gmail.com>
4475
4476         * darwin.patch: trivial linenumber update.
4477
4478         * Documentation/user/ {various}: `\context foo = named' changed
4479         to `\new foo = "name"' in docs.
4480
4481 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4482
4483         * scm/stencil.scm (annotate-y-interval): use it.
4484
4485         * scm/lily-library.scm (interval-sane?): new function.
4486
4487         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4488         tfm_checksum stuff.
4489
4490         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4491         common refpoint.
4492
4493         * flower/include/std-vector.hh (iterof): add iterof macro.
4494
4495         * lily/enclosing-bracket.cc (width): new function.
4496
4497         * lily/align-interface.cc (align_elements_to_extents): reinstate
4498         warning.
4499
4500 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4501
4502         * Documentation/index.html.in: fix spelling: thankyous.
4503
4504 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4505
4506         * lily/lyric-hyphen.cc: typo.
4507
4508 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4509
4510         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4511         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4512         builds don't work. 
4513
4514         * VERSION: release 2.7.35
4515
4516         * lily/beam.cc (get_default_dir): oops. Take abs () for
4517         extremes[DOWN].
4518         (get_default_dir): use extreme position criterion only in absence
4519         of forced stem directions.
4520
4521         * VERSION (PATCH_LEVEL): bump VERSION.
4522
4523         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4524         dependencies. Necessary for -jX builds.  
4525
4526 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4527
4528         * lily/relocate.cc (setup_paths): Yet another const fix.
4529
4530 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4531
4532         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4533
4534         * lily/relocate.cc (setup_paths): oops.
4535
4536 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4537
4538         * Documentation/index.html.in: order links: html before PDF.
4539
4540 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4541
4542         * lily/tie-column-format.cc (Module): remove.
4543
4544         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4545
4546         * lily/text-spanner.cc (print): idem.
4547
4548         * lily/dynamic-text-spanner.cc (print): only print line if longer
4549         than dash-period.
4550
4551         * lily/auto-change-iterator.cc (change_to): formatting.
4552
4553         * lily/beam.cc (get_default_dir): take extreme note head as input
4554         for stem direction.
4555
4556         * lily/tie.cc (get_default_dir): only look directions for visible
4557         stems. 
4558
4559         * lily/side-position-interface.cc (aligned_side): oops. Don't
4560         mutiply with direction. This fixes quantized (staccato, tenuto)
4561         scripts below notes.
4562
4563         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4564         direction. Fixes c-lyrics-center-align.ly
4565
4566 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4567
4568         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4569         constructor.
4570
4571         * lily/std-string.cc:
4572         * lily/include/std-vector.hh (split_string): Move and rename from
4573         lily/include/misc.hh, lily/misc.cc.  Update callers.
4574
4575 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4576
4577         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4578
4579 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4580
4581         * flower/test-file.cc: New file.
4582
4583         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4584         libraries.
4585
4586         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4587
4588 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4589
4590         * flower/include/file-storage.hh: remove file.
4591
4592         * lily/include/midi-item.hh (class Midi_track): idem.
4593
4594         * lily/include/source.hh (class Sources): idem.
4595
4596         * lily/include/performance.hh (class Performance): use vector
4597         iso. Cons<>
4598
4599         * flower/include/cons.hh (class Cons): remove file.
4600
4601         * flower/include/flower-proto.hh: remove template cruft.
4602
4603         * lily/include/font-metric.hh: use size_t not vsize for indices.
4604
4605         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4606         from proto.
4607
4608         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4609
4610         * lily/include/paper-book.hh (class Paper_book):
4611         make get_system_specs() public.
4612
4613         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4614         the force=10000 case if we don't have a current-best. 
4615
4616         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4617         vsize 
4618
4619         * flower/include/flower-proto.hh: remove outdated templates.
4620
4621         * scm/page.scm: use annotate-spacing
4622
4623 2006-02-15  Graham Percival  <gpermus@gmail.com>
4624
4625         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4626
4627         * THANKS: moved Erlend Aasland to contributors.
4628
4629 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4630
4631         * config.hh.in: remove HAVE_PANGO_16
4632
4633         * lily/tuplet-bracket.cc (calc_positions): multiply with
4634         staff-space for beam case. This fixes tuplets+beams on scaled
4635         staves.
4636
4637         * config.hh.in: remove all Kpathsea related defines.
4638
4639         * lily/dot-column.cc (side_position): reach stem via dots->
4640         head->stem. Inspect all stems for dot collisions. 
4641
4642         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4643         stem handling.
4644
4645         * lily/bar-number-engraver.cc (process_music): document function
4646         of whichBar.
4647
4648         * lily/score.cc (default_rendering): add pscore, not systems
4649         themselves.
4650
4651         * lily/paper-book.cc (get_system_specs): separate generation of
4652         titles and systems.
4653
4654         * flower/include/std-vector.hh: don't include config.hh
4655
4656 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4657
4658         * flower/include/std-vector.hh: Better wrapper compatibility with
4659         std::vector.
4660
4661         * flower/include/flower-proto.hh: Remove cheap forward declaration
4662         attempts.
4663
4664         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4665
4666 2006-02-14  Graham Percival  <gpermus@gmail.com>
4667
4668         * Documentation/user/invoking.itely: add warning about command line.
4669
4670 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4671
4672         * lily/include/lily-proto.hh: add Prob, rm Page.
4673
4674         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4675
4676         * VERSION: release 2.7.34
4677
4678         * lily/relocate.cc (framework_relocation): show canary if
4679         GHOSTSCRIPT_VERSION undefined.
4680
4681         * GNUmakefile.in: remove $(VERSION) symlink.
4682
4683         * lily/relocate.cc (setup_paths): add + 
4684
4685 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4686
4687         * Documentation/index.html.in: specify sizes for all big HTML pages.
4688
4689 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4690
4691         * config.hh.in: remove @FRAMEWORKDIR@
4692
4693         * lily/system-start-text.cc (get_stencil): new file: separate out
4694         system-start-delimiter text support.
4695
4696         * input/**ly: replace \context with \new where appropriate.
4697         
4698         * THANKS: add Don.
4699
4700         * lily/slur-scoring.cc (get_base_attachments): use
4701         robust_relative_extent. This fixes problems with empty paper-columns. 
4702
4703 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4704
4705         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4706
4707         * scm/define-music-properties.scm (all-music-properties):
4708         create-new property.
4709
4710         * lily/context-specced-music-iterator.cc (construct_children):
4711         inspect 'create-new property iso. magical $uniqueContextId context
4712         id.
4713
4714         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4715
4716         * lily/context-key-manager.cc (Module): new file. Encapsulate
4717         object key generation.
4718
4719         * lily/include/context-key-manager.hh (Module): new file.
4720
4721 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4722
4723         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4724         names vertically
4725
4726         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4727         options.
4728         (reloc_b): excise --enable-framework-dir
4729
4730         * lily/relocate.cc (framework_relocation): use getenv
4731         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4732
4733 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4734
4735         * flower/include/std-string.hh: 
4736         * flower/include/std-vector.hh: Finish std:: conversion; move
4737         flower extensions from std:: namespace.  Update users.
4738
4739         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4740         their expansion to vector<*>.  Update users.
4741
4742 2006-02-10  Graham Percival  <gpermus@gmail.com>
4743
4744         * Documentation/user/invoking.itely: add example to File structure.
4745
4746         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4747         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4748
4749 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4750
4751         * ly/paper-defaults.ly: typo.
4752
4753         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4754         set_parent() for parentheses. This will make it show up in bbox
4755         calculations.
4756
4757         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4758         ly:grob-common* functions.
4759
4760         * lily/grob-scheme.cc (LY_DEFINE):
4761         ly:grob-common-refpoint-of-array: new function 
4762         ly:grob-common-refpoint: new function 
4763         ly:grob-relative-coordinate: new function 
4764
4765         * lily/instrument-name-engraver.cc (process_music): use
4766         Text_interface::is_markup(). This fixes \markup on instrument names.  
4767
4768         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4769         for ties and slurs.
4770
4771         * lily/slur.cc (print): idem.
4772
4773         * lily/tie.cc: add line-thickness for ties. 
4774
4775 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4776
4777         * scm/output-svg.scm: Document diversion from GNU coding standards
4778         as a workaround for a bug in Microsoft Internet Explorer.
4779
4780 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4781
4782         * lily/instrument-name-engraver.cc (process_music): use
4783         is_markup() iso. is_string()
4784
4785         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4786
4787         * lily/percent-repeat-engraver.cc (process_music): only look at
4788         main_part_ for % repeats.
4789
4790         * lily/stem-tremolo.cc (get_beam_translation): new function.
4791         (calc_slope): new function.
4792         (height): don't use real slope.
4793
4794 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4795
4796         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4797         new connect-to-neighbor, control-points and staff-padding
4798         properties to make ligature brackets showing up again.
4799
4800 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4801
4802         * VERSION: release 2.7.33
4803
4804         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4805         too many.
4806
4807         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4808         remove applyOutput example.
4809         (Objects connected to the input): document \tweak, \parenthesize
4810
4811         * lily/relocate.cc (prefix_relocation): allow "current"
4812         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4813         changing VERSION in a lily tree less painful.
4814
4815         * input/regression/parenthesize.ly: new file. 
4816
4817         * scm/output-lib.scm (parenthesize-element): new function.
4818
4819         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4820
4821         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4822
4823         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4824         cause: accidentals are caused by note heads, not note events. 
4825
4826 2006-02-08  Graham Percival  <gpermus@gmail.com>
4827
4828         * darwin.patch: small patch from Erlend, thanks!
4829
4830         * Documentation/user/basic-notation.itely: add stem-neutral example.
4831
4832         * Documentation/user/putting.itely: clarifications.
4833
4834 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4835
4836         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4837         note, add more guidelines to what should go into NEWS.
4838
4839         * input/sakura-sakura.ly: document how to override font.
4840
4841         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4842
4843 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4844
4845         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4846
4847 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4848
4849         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4850         convertrules.  Add explicit grouping, needed for python2.2.
4851
4852 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4853
4854         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4855
4856 2006-02-07  Graham Percival  <gpermus@gmail.com>
4857
4858         * Documentation/user/global.itely: fix line-width in (text) docs.
4859
4860         * Documentation/user/lilypond-book.itely: same.
4861
4862 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4863
4864         * VERSION (PACKAGE_NAME): release 2.7.32
4865
4866         * Documentation/topdocs/NEWS.tely (Top): document new variable
4867         naming.
4868
4869         * flower/include/array.icc (Message): remove file.
4870
4871         * flower/include/std-vector.hh: make sure vsize and VPOS are
4872         defined for binary_search_bounds().
4873
4874         * flower/std-string.cc (std): add to_string(long unsigned).
4875
4876         * configure.in (gui_b): excise std_string option.
4877         (gui_b): excise std_vector option.
4878
4879         * flower/string.cc (Module): excise flower array & string
4880
4881         * flower/include/std-string.hh: excise flower string.
4882
4883         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4884
4885         * python/convertrules.py (lilypond_version_re_str): require
4886         only numbers and dots in \version string.
4887
4888 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4889
4890         * lily/system-start-delimiter.cc (print): allow style = text too.
4891
4892         * lily/system-start-delimiter-engraver.cc
4893         (acknowledge_system_start_text): new function, also add add to
4894         support of system-start-text (instrument names). This fixes
4895         instrument names on piano staves.
4896
4897         * lily/instrument-name-engraver.cc: rewrite. Use
4898         system-start-delimiter approach. This save memory and cpu.
4899
4900         * scm/define-grobs.scm (all-grob-descriptions): remove
4901         instrument-name from break-alignment.
4902
4903         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4904
4905 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4906
4907         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4908         jobserver going.
4909
4910         * configure.in (std_vector): On by default.
4911
4912         * lily/include/font-metric.hh:
4913         * lily/include/tfm-reader.hh: 
4914         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4915         Update users.
4916
4917         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4918
4919 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4920
4921         * VERSION (PACKAGE_NAME): 2.7.31
4922
4923         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4924         EPS edge at 0, but take minimum with left-overshoot. This fixes
4925         cut off system start delims. 
4926
4927         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4928         hack: add to axis group if not added yet. This fixes hara kiri'd
4929         piano staves.
4930
4931         * lily/hara-kiri-group-spanner.cc
4932         (force_hara_kiri_in_y_parent_callback): fix signatures.
4933
4934         * lily/hairpin.cc (print): check next hairpin to see whether or
4935         not to be continuing.
4936
4937 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4938
4939         * Remove trailing whitespace from makefiles.
4940         
4941         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4942         for earlier gcc.
4943
4944         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4945
4946         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4947
4948         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4949
4950         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4951
4952         * configure.in: Use it.
4953
4954 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4955
4956         * scm/music-functions.scm (pitch-of-note): new function.
4957
4958         * ly/music-functions-init.ly: add \octave and \addquote
4959
4960         * lily/parser.yy (music_function_chord_body): softcode \octave.
4961         (lilypond_header): softcode \addquote
4962
4963 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4964
4965         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4966         array.hh, parray.hh at all.  Getting ready to flip the
4967         configure default.
4968
4969         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4970
4971         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4972         a bit.
4973
4974         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4975
4976 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4977
4978         * flower/include/array.hh: typo. 
4979
4980 2006-02-02  Graham Percival  <gpermus@gmail.com>
4981
4982         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4983
4984 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4985
4986         * flower/include/pqueue.hh: Derive from std::vector.
4987
4988         * flower/include/parray.hh: Conform to std::vector interface.
4989         Update users.
4990
4991 2006-02-02  Graham Percival  <gpermus@gmail.com>
4992
4993         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4994
4995 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4996
4997         * flower/file-path.cc (is_file): remove if 0 section.
4998
4999         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5000         selecting afii61352.
5001
5002 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5003
5004         * flower/include/std-vector.hh (boundary): Oops, reverse.
5005
5006         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5007         remove superfluous `d'.
5008
5009         * flower/include/std-vector.hh (boundary, top): Detach from class.
5010         Remove empty vector shell.
5011
5012         * flower/include/array.hh (reverse, swap): Detach from class.
5013         Update users.
5014         
5015         * flower/include/std-vector.hh
5016         * flower/include/array.hh (concat): Globally change to insert ().
5017
5018         
5019         * flower/include/std-vector.hh
5020         * flower/include/parray.hh
5021         * flower/include/array.hh (elem, elem_ref): Globally replace by
5022         at ().
5023
5024 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5025
5026         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5027
5028         * python/convertrules.py (FatalConversionError.sub_cxx_id):
5029         anticipate on identifier substitutions.
5030
5031 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5032
5033         * flower/include/std-vector.hh (insert): Remove, replace by
5034         std::vector interface.  Update callers.
5035
5036         * flower/include/array.icc (insert): Change signature to
5037         match std::vector interface.
5038         
5039         * flower/include/array.icc (vector_sort): Bugfix.
5040
5041 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5042
5043         * lily/parser.yy (output_def_head_with_mode_switch): new
5044         production. Result: dashes and underscores may be used in the
5045         \paper block.
5046
5047         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
5048
5049         * python/convertrules.py (conv): oops. One slash too much.
5050
5051 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5052
5053         * flower/include/std-vector.hh (sort): Remove, replace by
5054         ::vector_sort.  Update callers.
5055
5056         * flower/include/std-vector.hh (slice): Remove.  Update callers.
5057         (sort): Bugfix.
5058
5059         * flower/test-std.cc (vector_sort): New test.
5060
5061 2006-02-01  Graham Percival  <gpermus@gmail.com>
5062
5063         * Documentation/user/putting.itely: fixes from Erik.
5064
5065 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5066
5067         * flower/test-std.cc: Add simple unit test for vector migration.
5068
5069         * stepmake/stepmake/test*: Unit test support.
5070
5071         * flower/include/std-vector.hh (del): Remove.  Use erase (),
5072         update callers.
5073
5074         * flower/include/array.hh (begin, end): Add.
5075         (del, get): Remove.
5076
5077 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5078
5079         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5080         std::string not String. 
5081
5082         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5083         iso UINT_MAX.
5084
5085         * lily/prob.cc (Prob): copy type_ too.
5086
5087         * lily/lily-guile.cc (mangle_cxx_identifier): new
5088         function. Class_bla::foo_bar_[px] ->
5089         ly:class-bla::foo-bar[?!]. Changes throughout
5090
5091 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5092
5093         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5094
5095         * lily/beam.cc (calc_direction): take dir from visible stem in
5096         degenerate case.
5097
5098 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5099
5100         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5101         Fix -1, >=0 boundary checks for unsigned vsize.
5102
5103         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5104         loop for unsigned vsize.
5105
5106         * configure.in (--enable-std-vector): New option.
5107         (--enable-std-string): On by default.
5108
5109         * flower/include/std-vector.hh: New file.  Enable switch to
5110         std::vector, update client code.
5111
5112 2006-01-30  Graham Percival  <gpermus@gmail.com>
5113
5114         * scm/document-translation.scm: clarify "this context is also
5115         known as".  Thanks, Werner!
5116
5117         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5118
5119         * Documentation/user/invoking.itely: small fix from Don.
5120
5121 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5122
5123         * scm/lily.scm (define-scheme-options): rename option
5124         preview-include-book-title to book-title-preview
5125         (define-scheme-options): move force-eps-font-include (from paper
5126         block) to eps-font-include -d option.
5127
5128         * VERSION (PATCH_LEVEL): release 2.7.30
5129
5130         * input/bach-schenker.ly (staffPiano): new file.
5131
5132         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5133
5134         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5135         credits to Nicolas.
5136
5137         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5138
5139         * ps/lilyponddefs.ps: remove start-system, stop-system,
5140         start-page fluff. This saves putting { } code on the stack, fixing
5141         stack overflows when including EPS files.
5142
5143 2006-01-29  Graham Percival  <gpermus@gmail.com>
5144
5145         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5146
5147 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5148
5149         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5150
5151 2006-01-28  Graham Percival  <gpermus@gmail.com>
5152
5153         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5154
5155 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5156
5157         * input/mutopia/claop.py: Update.
5158
5159 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5160
5161         * input/regression/completion-heads.ly (texidoc): fix.
5162
5163         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5164
5165         * lily/tie-formatting-problem.cc
5166         (set_ties_config_standard_directions): use abs iso fabs for ints.
5167
5168         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5169
5170         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5171         little less than noteheight, to prevent overlaps in chords.
5172
5173         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5174         head, and fudge stem-attachment.
5175
5176         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5177
5178         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5179
5180 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5181
5182         * lily/main.cc (main): Debugging aid: catch exceptions.
5183
5184         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5185         output with std::string.
5186
5187 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5188
5189         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5190
5191 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5192
5193         * Fix -DSTRING_UTILS_INLINED.
5194
5195 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5196
5197         * VERSION (PATCH_LEVEL): release 2.7.29
5198
5199         * lily/relocate.cc (setup_paths): mingw uses std string too.
5200
5201         * lily/*.cc: various fixes for substr(ARG).
5202
5203         * lily/sustain-pedal.cc (print): 
5204
5205         * flower/file-name.cc (slashify): use std strings.
5206
5207         * flower/string-convert.cc: remove publib.h
5208
5209         * scm/define-markup-commands.scm (verbatim-file): new markup
5210         command \verbatim-file
5211
5212         * Documentation/topdocs/NEWS.tely: fixup URLs
5213
5214         * input/regression/alignment-vertical-manual-setting.ly (Module):
5215         new file.
5216
5217         * lily/align-interface.cc (align_elements_to_extents): overwrite
5218         translations with numbers in alignment-offsets from left bound
5219
5220         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5221         (page-translate-systems): new function: take into account Y-offset.
5222
5223         * Documentation/topdocs/NEWS.tely (Top): document new features.
5224
5225         * input/regression/page-layout-manual-position.ly (Module): new
5226         file.
5227
5228 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5229
5230         * flower/file-path.cc (path::parse_path): Oops.
5231
5232         * Finish std::string interface.  For now, use std:: marker
5233         throughout for easy s/r.
5234
5235 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5236
5237         * Documentation/user/putting.itely (Score is a single musical
5238         expression): typo.
5239         (Score is a single musical expression): more typos.
5240
5241         * scm/page.scm (annotate-space-left): thinko.
5242         (annotate-page): more thinkos.
5243
5244 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5245
5246         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5247         for different \score blocks separately.
5248         (post-process-pages): put write-page-layout into paper block.
5249
5250         * lily/output-def.cc (get_parser): new file.
5251
5252         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5253         file.
5254
5255         * lily/include/output-def.hh (class Output_def): add parser_ member.
5256
5257         * input/regression/page-layout-twopass.ly (Module): new file.
5258
5259         * scm/lily.scm: remove cpp hack.
5260
5261         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5262
5263 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5264
5265         * GNUmakefile.in (c-clean): New target.
5266
5267         * flower/include/std-string.hh: String/std::string compatibility:
5268         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5269         type.
5270
5271         * flower/rational.cc: 
5272         * flower/include/rational.hh: 
5273
5274         * flower/offset.cc: 
5275         * flower/include/offset.hh: 
5276
5277         * flower/interval.cc: 
5278         * flower/include/interval.hh: 
5279
5280         * flower/string-convert.cc: 
5281         * flower/include/string-convert.hh: Use std::string [interface].
5282         Update callers.
5283
5284 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5285
5286         * Documentation/index.html.in: clean up.
5287
5288 2006-01-25  Graham Percival  <gpermus@gmail.com>
5289
5290         * Documentation/user/putting.itely: another new untested doc section.
5291
5292 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5293
5294         * scm/layout-page-layout.scm (write-page-breaks): write
5295         \spacingTweaks #ALIST. Handle grace timing.
5296
5297         * scm/: more imports.
5298
5299         * scm/page.scm (make-page): add footer/header.
5300         (annotate-space-left): revise: only take page argument.
5301         (layout->page-init): new function.
5302
5303         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5304         version of the system/spacing/linebreak hack writing to the output
5305
5306         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5307         ly:make-prob.
5308
5309         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5310         ly:spanner-bound
5311
5312 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5313
5314         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5315
5316         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5317
5318         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5319         handling to page.scm
5320
5321         * lily/prob-scheme.cc (LY_DEFINE): new file.
5322         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5323
5324         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5325         prob functions.
5326
5327         * lily/music.cc (derived_mark): derive Music from Prob.
5328
5329         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5330
5331         * lily/prob.cc (Module): Implement Prob (Property Object), object
5332         with shared and r/w property alists.  
5333
5334         * lily/include/prob.hh (Module): new file. Declare Prob.
5335
5336         * flower/string.cc: remove is_empty().
5337
5338         * flower/include/string.hh (class String): remove String:: qualifier.
5339
5340         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5341         substitute appropriate functions.
5342
5343         * flower/include/string.hh (class String): remove to_str0 and
5344         is_empty(). S&R everywhere.
5345
5346 2006-01-23  Graham Percival  <gpermus@gmail.com>
5347
5348         * Documentation/user/basic-notation.itely: add hairpin
5349         after-linebreak tweak to commonprop.
5350
5351         * Documentation/user/putting.itely: added two new sections.
5352
5353 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5354
5355         * flower/international.cc: 
5356         * flower/include/international.hh: 
5357
5358         * flower/getopt-long.cc: 
5359         * flower/include/getopt-long.hh: Use std::string [interface].
5360         Update callers.
5361
5362         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5363
5364         * stepmake/stepmake/executable-rules.make: Add dependency on
5365         module libraries.
5366
5367 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5368
5369         * flower/file-path.cc: 
5370         * flower/include/file-path.hh: Use std::string [interface].
5371         Update callers.
5372
5373         * flower/direction.cc: 
5374         * flower/axis.cc: Unused.  Remove.
5375
5376         * configure.in (--enable-std-string): New option.
5377
5378         * flower/std-string.cc: 
5379         * flower/include/std-string.hh: New file.
5380
5381         * flower/file-name.cc[STD_STRING]:
5382         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5383
5384 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5385
5386         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5387
5388         * scm/define-markup-commands.scm (with-dimensions):
5389         with-dimensions markup command.
5390
5391         * input/test/font-table.ly: use it.
5392
5393         * lily/open-type-font.cc (glyph_list): new function.
5394
5395         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5396
5397         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5398
5399 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5400
5401         * ly/music-functions-init.ly (parallelMusic): new music function
5402         for parallel music entry.
5403
5404         * scm/define-music-properties.scm (all-music-properties): new
5405         'void music property
5406
5407         * scm/music-functions.scm (ly:music-message): make public, to be
5408         used in music function definitions
5409
5410         * scm/lily-library.scm (collect-music-for-book): discard music
5411         when the 'void property is set.
5412
5413 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5414
5415         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5416
5417         * mf/GNUmakefile: idem.
5418
5419         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5420
5421         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5422
5423         * Documentation/user/notation-appendices.itely (The Feta font):
5424         use it.
5425
5426         * input/test/font-table.ly: new file. Generate font table within lily.
5427
5428         * Documentation/user/notation-appendices.itely (The Feta font):
5429         use new font-table.ly file. 
5430
5431         * stepmake/stepmake/install-out-targets.make
5432         (local-install-outfiles): only create directory if
5433         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5434
5435 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5436
5437         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5438
5439         * VERSION (PACKAGE_NAME): release 2.7.28
5440
5441         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5442         the right font from a Mac dfont.
5443         (write-preamble): don't forget directory, only look at files.
5444
5445         This fixes problems with TTF files in dfonts that don't match
5446         their PostScript names.
5447          
5448         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5449         PS name from TTF font.
5450
5451         * input/regression/tie-manual.ly: document new feature.
5452
5453         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5454
5455         * VERSION (MY_PATCH_LEVEL): bump to .28
5456
5457         * Documentation/user/basic-notation.itely (Ties): add tie examples
5458         refs.
5459
5460         * lily/tie-formatting-problem.cc (score_ties_configuration):
5461         symmetry penalties for outer ties.
5462
5463 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5464
5465         * lily/tie-formatting-problem.cc (generate_configuration) 
5466         (set_manual_tie_configuration): skip non-pair manual
5467         tie-configuration, so you can set individual ties as
5468
5469           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5470
5471         * input/regression/tie-chord.ly: use generateTiePattern to
5472         simplify file.
5473
5474         * lily/tie-formatting-problem.cc (peak_around): new function.
5475         (score_configuration): use sliding criterion for staff line collisions. 
5476         (score_configuration): idem for dot collisions.
5477         (generate_configuration): use separate stem_gap for gap to stem.
5478
5479         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5480         separate penalty factors for x and y distance.
5481         (struct Tie_details): separate penalties for tip and center line collisions.
5482
5483 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5484
5485         * lily/tie-formatting-problem.cc (generate_configuration): make
5486         large ties avoid stafflines in the horizontal section.
5487         (score_configuration): use softcoded penalties
5488         (score_aptitude): idem.
5489
5490         * lily/tie-helper.cc (from_grob): softcode tie details
5491
5492         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5493
5494         * lily/staff-symbol-referencer.cc (on_line): rename from
5495         on_staffline 
5496
5497 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5498
5499         * ly/music-functions-init.ly: remove duplicate tag.
5500
5501         * lily/include/*.hh: GCC 4.1 fixes.
5502
5503 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5504
5505         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5506
5507         * scm/define-music-types.scm: fix bug in desc. string
5508         for OverrideProperty
5509
5510 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5511
5512         * scripts/lilypond-book.py: bugfix
5513
5514         * scm/define-music-types.scm: fix typos.
5515
5516 2006-01-14  Graham Percival  <gpermus@gmail.com>
5517
5518         * Documentation/user/ basic-notation.itely, global.itely,
5519         advanced-notation.itely, instrument-notation.itely: small
5520         additions (bugs and commonly tweaked properties).
5521
5522 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5523
5524         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5525         detection of mingw build.
5526         (MINGW_BUILD): opps.
5527
5528 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5529
5530         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5531         i686-mingw32.
5532
5533 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5534
5535         * scm/music-functions.scm (skip->rest): add skip->rest
5536
5537 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5538
5539         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5540         explicitly.
5541
5542         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5543         config dirs. Aids debugging. 
5544         (display_config): also display config files.
5545
5546 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5547
5548         * VERSION: release 2.7.27
5549
5550         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5551         for determining bar size.
5552
5553         * lily/staff-symbol.cc (print): place lines at distance line-positions
5554
5555         * scm/define-grob-properties.scm (all-user-grob-properties): add
5556         line-positions.
5557
5558         * lily/staff-symbol.cc (height): new function.
5559
5560         * input/regression/staff-line-positions.ly:  new file.
5561
5562 2006-01-06  Graham Percival  <gpermus@gmail.com>
5563
5564         * input/test/add-staccato.ly: remove reference to old file.
5565
5566 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5567
5568         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5569         lilypond binary too.
5570
5571 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5572
5573         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5574
5575 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5576
5577         * scripts/midi2ly.py: Bugfix: Declare datadir.
5578
5579         * make/ly-rules.make:
5580         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5581         that seems to be gone). Fixes make web.
5582
5583         * The grand 2005-2006 replace.
5584
5585         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5586
5587 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5588
5589         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5590         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5591         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5592         like -dgs-font-load.
5593
5594         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5595         remove absolute path to lilypond binary.
5596         
5597 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5598
5599         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5600
5601 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5602
5603         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5604
5605         * mf/GNUmakefile: remove broken dvips map symlink.
5606
5607 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5608
5609         * lily/main.cc: 
5610         * configure.in: Cosmetic fixes.
5611
5612 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5613
5614         * Documentation/user/music-glossary.tely (Pitch names): Added
5615         Spanish pitch names and durations, thanks to Ernesto Gancedo
5616
5617 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5618
5619         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5620         init. Fixes verbose printing of .scm files.
5621
5622         * stepmake/aclocal.m4: add spaces before - options.
5623         
5624 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5625
5626         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5627         of path search in local block variable.
5628
5629 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5630
5631         * configure.in (NCSB_DIR): --enable-ncsb-dir
5632         (LINK_GXX_STATICALLY): denko.
5633
5634         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5635
5636         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5637         use locate to find c059033l.pfb. 
5638         
5639 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5640
5641         * lily/tie-formatting-problem.cc
5642         (problem::generate_base_chord_configuration): Use my_round (was
5643         round).
5644
5645         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5646         do not invoke mbrtowc.
5647
5648         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5649
5650 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5651
5652         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5653
5654 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5655
5656         * Documentation/user/invoking.itely (svg): revise.
5657
5658 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5659
5660         * lily/lexer.ll: use sourcefilename iso. renameinput.
5661
5662 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5663
5664         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5665         <PostScriptName>.ttf instead of c059XXXttf.
5666
5667         * lily/program-option.cc (LY_DEFINE): special support for
5668         --verbose, so it works before option init too.
5669  
5670         * mf/GNUmakefile (local-install): oops.
5671
5672         * lily/lyric-hyphen.cc (print): oops.
5673
5674         * buildscripts/pfx2ttf.fontforge: new file.
5675         
5676         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5677         ($(outdir)/%.ttf): new rule. 
5678
5679         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5680         to LyricHyphen.
5681
5682         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5683         font-size
5684
5685 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5686
5687         * VERSION: release 2.7.26
5688         
5689         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5690
5691 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5692
5693         * lily/font-config.cc (init_fontconfig): verbosity.
5694
5695         * THANKS: add Muziekacademie Lede. 
5696
5697         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5698         (print_score_setup): new function
5699         (convert): read part definition to output staves properly.
5700
5701         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5702         Music_xml notes.
5703
5704         * python/musicexp.py (Output_printer.__init__): use _ in data
5705         members.
5706         (Output_printer.unformatted_output): new function: no formatting,
5707         but count braces.
5708         (Duration.get_length): remove isinstance() checks for
5709         Output_printer everywhere.
5710
5711         * input/regression/lyrics-bar.ly (texidoc): add
5712         Separating_line_group_engraver.
5713
5714 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5715
5716         * lily/relocate.cc (framework_relocation): New function,
5717         factored from set_relocation ().
5718         (prefix_relocation): Rename from set_relocation ().
5719         (setup_paths): Use it.
5720
5721 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5722
5723         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5724         numbers. Patch by Erlend Aasland.
5725
5726 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5727
5728         * lily/font-config.cc (init_fontconfig): print warning if cache
5729         file is not existant.
5730
5731         * lily/main.cc: don't use #ifdef but #if
5732
5733 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5734
5735         * lily/grob-property.cc (internal_set_property): don't abort on
5736         calculation-in-progress.
5737
5738         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5739
5740         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5741         connect-to-neighbor property not connect-to-other
5742
5743         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5744         (LY_DEFINE): oops. don't forget protection.
5745
5746         * flower/parse-afm.cc (Module): strip AFM handling completely.
5747
5748         * lily/stencil-expression.cc: idem.
5749
5750         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5751
5752         * lily/function-documentation.cc (ly_add_function_documentation):
5753         use static member iso. Protected_scm
5754
5755         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5756
5757         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5758
5759 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5760
5761         * lily/relocate.cc (set_env_dir): New function.
5762         (set_relocation): Use it to fix setting PANGO_PREFIX.
5763
5764 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5765
5766         * input/regression/stem-direction-context.ly: remove rest.
5767
5768         * lily/melody-engraver.cc (process_music): restart for bar lines.
5769         (acknowledge_slur): restart for slurs.
5770
5771 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5772
5773         * Documentation/user/invoking.itely: describe how to view SVG 
5774         output using Inkscape which replace embedded fonts with OTF fonts.
5775
5776 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5777
5778         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5779
5780 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5781
5782         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5783         comment.
5784
5785 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5786
5787         * VERSION (PACKAGE_NAME): release 2.7.25
5788
5789         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5790
5791         * input/regression/stem-direction-context.ly: new file.
5792
5793         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5794
5795         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5796         on rest.
5797
5798         * ly/engraver-init.ly: add Melody_engraver
5799
5800         * lily/beam.cc (calc_direction): use default-direction
5801         iso. get_default_direction()
5802
5803         * scm/define-grob-properties.scm (all-user-grob-properties): add
5804         default-direction property.
5805
5806         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5807
5808         * lily/stem.cc (calc_default_direction): remove
5809         Stem::get_default_direction, use default-direction with callback
5810         instead.
5811
5812         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5813
5814         * lily/melody-engraver.cc: new file. Acknowledge stems for
5815         interpolated stem directions. 
5816
5817         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5818
5819         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5820
5821         * lily/slur-configuration.cc (fit_factor): more robust check for
5822         point in curve X-extent.
5823
5824         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5825         (outside_slur_callback): check for 'outside avoidance.
5826
5827         * lily/slur-configuration.cc (score_extra_encompass): don't use
5828         bound->column() == avoid->column() for checking extents, as this
5829         doesn't work for accidentals. 
5830
5831         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5832         DynamicText hardcoding.
5833
5834         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5835         crash if bound stem is NULL
5836
5837         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5838         pedals.
5839
5840 2005-12-22  Graham Percival  <gpermus@gmail.com>
5841
5842         * scm/define-markup-commands.scm: typo.  @code{\raise}
5843         => @code{\\raise}.
5844
5845         * darwin.patch: now used again, includes a
5846         required patch from fink.
5847
5848 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5849
5850         * po/TODO: mention gtranslator along with kbabel.
5851         * po/fi.po: update translations.
5852
5853 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5854
5855         * lily/relocate.cc (setup_paths): Bugfix.
5856
5857 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5858
5859         * lily/slur-configuration.cc (score_extra_encompass): don't use
5860         "avoid" choice for avoid-slur.
5861
5862         * stepmake/bin/install.py (dest): don't create existing dir.
5863
5864 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5865
5866         * stepmake/bin/install.py: Remove file before copying.
5867
5868         * config.make.in: 
5869         * stepmake/aclocal.m4: Do not substitute INSTALL.
5870
5871 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5872
5873         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5874         depend on link-tree.
5875
5876         * lily/relocate.cc (setup_paths): only check path for non-absolute
5877         dir without directory part.
5878
5879         * flower/file-name.cc (is_absolute):  new method.
5880         (is_absolute): check root_ too.
5881
5882 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5883
5884         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5885         relocation code.  Oops, don't comment out too much.
5886
5887         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5888         iso itself.
5889
5890         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5891         compile.
5892
5893 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5894
5895         * .cvsignore: Add install-sh.
5896
5897         * autogen.sh (srcdir): Typo.
5898
5899 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5900
5901         * autogen.sh (srcdir): urg. Touch install-sh.
5902
5903         * stepmake/bin/install-sh (Module): remove.
5904
5905         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5906
5907         * lily/include/relocate.hh: new file.
5908
5909         * lily/relocate.cc: new file. Contain relocation logic.
5910
5911         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5912         (main): read LILYPOND_VERBOSE as the first thing.
5913
5914         * stepmake/aclocal.m4: remove INSTALL variable.
5915
5916         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5917         separate target for making font symlinks.
5918         (documentation-dir): use $(if $(findstring )) for switching off
5919         Documentation.
5920
5921         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5922         something if DOCUMENTATION is no.
5923
5924 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5925
5926         * VERSION: release 2.7.24
5927
5928         * lily/script-column-engraver.cc (stop_translation_timestep):
5929         delay adding to script-column.
5930
5931         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5932
5933         * python/convertrules.py (conv): rule for number-visibility
5934
5935         * lily/slur-configuration.cc (score_extra_encompass): different
5936         distance measure for avoid and inside avoidance.
5937         (score_extra_encompass): use 1/(distance+eps) as penalty.
5938
5939         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5940         encompass objects for generating slur curves.
5941
5942         * lily/slur.cc: use details iso. slur-details property.
5943
5944         * input/regression/slur-tuplet.ly: new file.
5945
5946         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5947
5948         * flower/include/offset.hh (class Offset): new operator /=
5949
5950         * lily/tuplet-number.cc (print): new file, new interface.
5951
5952         * scm/define-grob-properties.scm (all-user-grob-properties):
5953         remove number-visibility property.
5954
5955         * lily/tuplet-bracket.cc (calc_control_points): new function
5956         (calc_connect_to_neighbors): new function.
5957         (print): remove text handling for tuplet numberdef.
5958
5959         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5960         TupletNumbers too. 
5961
5962         * lily/lily-guile.cc (robust_scm2booldrul): new function
5963
5964         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5965
5966         * lily/tuplet-bracket.cc (calc_position_and_height): use
5967         staff-padding to control whether tuplet brackets are over staves.
5968
5969         * lily/grob.cc (suicide): clear dim_caches_.
5970
5971         * lily/dimension-cache.cc (clear): new function.
5972
5973         * lily/grob.cc (extent): swap order of min-extent and extent
5974         calculations. This fixes hara kiri staves. 
5975
5976 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5977
5978         * lily/main.cc: Nitpick: relocation is not based on path, but on
5979         directory (location).
5980
5981 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5982
5983         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5984
5985         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5986
5987         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5988
5989         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5990
5991         * stepmake/stepmake/generic-vars.make (Module): idem.
5992
5993         * stepmake/stepmake/executable-targets.make (default): use it.
5994
5995         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5996
5997         * make/GNUmakefile: don't install make rules.
5998
5999         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6000         slashes.
6001         (prepend_env_path): more verbosity.
6002
6003 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6004
6005         * GNUmakefile.in: add dir argument for find command.
6006
6007         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6008         fixes weird line numbers for point & click.
6009
6010         * lily/source-file.cc (get_counts): init line/column/char counts.
6011
6012 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6013
6014         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6015
6016 2005-12-16  Graham Percival  <gpermus@gmail.com>
6017
6018         * Documentation/user/basic-notation.itely, advanced-notation.itely:
6019         minor fixes from Fredric.  Thanks!
6020
6021 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6022
6023         * ly/music-functions-init.ly: add \bar and \clef music function 
6024
6025         * lily/lily-lexer.cc: idem.
6026
6027         * lily/parser.yy (FIXME): remove BAR and CLEF.
6028
6029 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6030
6031         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6032
6033         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6034         function arguments too
6035
6036         * lily/main.cc (set_relocation): new function.
6037
6038         * scripts/musicxml2ly.py (convert): add \version
6039
6040         * lily/tie.cc: remove get_default_attachments()
6041
6042         * VERSION (PACKAGE_NAME): release 2.7.23
6043         
6044         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6045         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6046
6047         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6048
6049         * lily/tie-formatting-problem.cc (score_ties): new function
6050         (get_variations): new function. Try flipping dirs for collisions.
6051         (generate_optimal_chord_configuration): new function. 1-opt search
6052         for better configuration.
6053
6054         * lily/tie-configuration.cc: new file.
6055
6056         * lily/tie.cc: junk Tie::get_configuration()
6057
6058         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6059         (score_ties_configuration): new function.
6060         (generate_ties_configuration): new function.
6061         (generate_base_chord_configuration): new function.
6062         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
6063         (set_manual_tie_configuration): Move body from tie-column-format.cc 
6064
6065         * input/regression/tie-dot.ly: new file.
6066
6067         * lily/tie-formatting-problem.cc (score_configuration): score
6068         tie/dot collisions.
6069
6070         * lily/tie-helper.cc (get_transformed_bezier): new function
6071
6072         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6073
6074         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6075         -undefined suppress iso. -framework Python 
6076
6077         * scm/define-grobs.scm (all-grob-descriptions): set
6078         springs-and-rods (thanks Joe Neeman!)
6079
6080 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6081
6082         * input/no-notation/display-lily-tests.ly (test): 
6083         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6084         changed from \tag #'(a b) to \tag #'a \tag #'b
6085
6086 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6087
6088         * Documentation/topdocs/NEWS.tely: strip out-www.
6089
6090         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6091
6092         * config.make.in (AR): add AR and RANLIB
6093
6094         * flower/libc-extension.cc: include cassert
6095
6096         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6097         darwin check.
6098
6099 2005-12-11  Graham Percival  <gpermus@gmail.com>
6100
6101         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6102
6103         * stepmake/stepmake/python-modules-vars.make: define
6104         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
6105
6106         * THANKS: added Johannes Schindelin.
6107
6108 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6109
6110         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6111
6112         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6113         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6114
6115         * lily/parser.yy: reorganize file layout.
6116
6117         * ly/music-functions-init.ly: add tweak music function.
6118
6119         * lily/grob-info.cc (ultimate_music_cause): new function:
6120         recursively lookup causes. 
6121
6122         * lily/parser.yy (chord_body_element): allow music functions for
6123         post-events, allow music functions for chord elements. 
6124  
6125         * lily/font-config-scheme.cc (display_fontset): add cast.
6126
6127         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6128         #'(a b) -> \tag #'a \tag #'b rule.
6129
6130         * python/musicexp.py (Output_printer.dump_version): new function
6131
6132 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6133
6134         * lily/parser.yy (FIXME): remove \tag
6135         (FIXME): remove tag_music() function.
6136
6137         * lily/lily-lexer.cc: remove \tag
6138
6139         * ly/music-functions-init.ly: define music-function "tag"
6140
6141         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6142
6143 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6144
6145         * VERSION (PATCH_LEVEL): release 2.7.22
6146
6147         * input/regression/lyric-hyphen-retain.ly: renew.
6148
6149         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6150         grob
6151
6152         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6153         iso. minimum-length property for rods.
6154
6155         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6156         LyricSpace item to keep lyrics spaced apart.
6157
6158         * ly/engraver-init.ly: remove Separating_line_group_engraver
6159
6160         * Documentation/user/music-glossary.tely: do setfilename before
6161         music-glossary.
6162
6163 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6164
6165         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6166         See xref documentation, for example.
6167
6168 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6169
6170         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6171         pending_skip iso. ly_voice[-1]
6172         (main): add if __main__ for debugging.
6173
6174         * python/musicxml.py (Accidental.__init__): new class.
6175
6176         * scripts/musicxml2ly.py (progress): new function
6177         (musicxml_key_to_lily): don't barf on modeless keys.
6178         (create_skip_music): new function.
6179         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6180         (musicxml_note_to_lily_main_event): new function.
6181
6182         * python/musicexp.py (Music.__init__): add comment field.
6183         (NestedMusic.append): new routine.
6184         (SequentialMusic.print_ly): print comment.
6185         (ArpeggioEvent.ly_expression): new class
6186         (BeamEvent.ly_expression): new class
6187         (NoteEvent.__init__): support for cautionary/forced accs.
6188
6189         * lily/lookup.cc (slur): normal order for array loop.
6190
6191         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6192         to 0.0.
6193
6194         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6195         collapsed.
6196
6197 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6198
6199         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6200
6201         * scripts/lilypond-book.py: Introduce option
6202             --preserve-line-breaks, for usage with srcltx
6203
6204 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6205
6206         * scm/output-lib.scm (print-circled-text-callback): draw circle
6207         around text using make-circle-markup.
6208
6209         * Documentation/user/*: strip out-www from file names.
6210
6211 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6212
6213         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6214         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6215
6216 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6217
6218         * Documentation/user/GNUmakefile: idem.
6219
6220         * Documentation/user/macros.itexi: strip out-www
6221
6222         * python/rational.py: python 2.3 compat.
6223
6224         * VERSION (PATCH_LEVEL): release 2.7.21
6225
6226         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6227         option formatting, lilypond style.
6228
6229         * python/musicexp.py: grab from Ikebana: a library for composing
6230         ly music expressions. 
6231         (Output_printer): class for advanced .ly printing.
6232         (eg. tupletting) 
6233
6234         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6235         convert to pythonesque structure.
6236
6237         * python/rational.py: PD rational number class.
6238
6239         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6240
6241 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6242
6243         * lily/part-combine-iterator.cc: Minor bugfix
6244         
6245         * THANKS: Update bughunters
6246
6247 2005-12-02  Werner Lemberg  <wl@gnu.org>
6248
6249         * mf/README: Document process for proper mf2pt1 conversion.
6250
6251         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6252         overlapping.
6253
6254         * mf/feta-harmonica.mf: Removed.  Unused.
6255
6256 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6257
6258         * scripts/lilypond-book.py (do_file): fix thinkos.
6259
6260 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6261
6262         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6263         ($(outdir)/parser.cc): 
6264         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6265
6266 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6267
6268         * ly/titling-init.ly (tagline): it should be a space between
6269         "Music engraving by LilyPond" and the version number.
6270
6271 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6272
6273         * VERSION (PACKAGE_NAME): release 2.7.20
6274
6275 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6276
6277         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6278
6279         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6280         1.0.
6281         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6282
6283 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6284
6285         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6286
6287         * kpath-guile/: remove directory
6288
6289         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6290         file. Encapsulate kpathsea using commandline tools.
6291
6292         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6293         kpathsea) module.
6294
6295 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6296
6297         * Documentation/user/advanced-notation.itely (Setting automatic
6298         beam behavior): Correct a few typos. Thanks to David Bobroff.
6299
6300         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6301         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6302
6303 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6304
6305         * scripts/*.py: gmane address for bugs.
6306
6307 2005-11-28 Pal Benko <benkop@freestart.hu>
6308         
6309         * make/ly-rules.make: add -f switch to mv
6310
6311         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6312
6313         * lily/bar-line.cc: interpret it
6314
6315 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6316
6317         * configure.in (--disable-documentation): New switch.
6318
6319         * GNUmakefile.in: Use it.
6320
6321         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6322
6323 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6324
6325         * scripts/lilypond-book.py (do_file): search chunks for
6326         \\begin{document}
6327
6328         * GNUmakefile.in: add copy step in between so we can lose the
6329         out-www directories.
6330
6331 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6332
6333         * lily/pango-font.cc (pango_item_string_stencil): put
6334         geometry.width into glyph-string too.
6335
6336 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6337
6338         * scm/define-music-display-methods.scm (RevertProperty):
6339         (OverrideProperty): Use grob-property-path property, a list of
6340         symbols, instead of grob-property, which used to be a single
6341         symbol.
6342         (BassFigureEvent): a figure can be a plain number, not necessarily a
6343         markup.
6344
6345 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6346
6347         * VERSION: release 2.7.19
6348         
6349         * lily/figured-bass-engraver.cc (process_music): check
6350         figuredBassCenterContinuations first.
6351
6352         * scm/translation-functions.scm (format-bass-figure): make double
6353         sharp larger. 
6354
6355         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6356         determine X-parent.
6357
6358         * lily/system-start-delimiter-engraver.cc: move from
6359         Nested_system_start_delimiter_engraver, rename
6360         Nested_system_start_delimiter_engraver ->
6361         System_start_delimiter_engraver.
6362
6363         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6364         bracket type from hierarchy.
6365
6366 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6367
6368         * lily/rest.cc (y_offset_callback): read staff-position.
6369
6370         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6371         mark after-line-breaking-callback as internal.
6372
6373         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6374
6375 2005-11-25  Werner Lemberg  <wl@gnu.org>
6376
6377         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6378
6379 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6380
6381         * stepmake/bin/add-html-footer.py (do_file): add google
6382
6383         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6384         staff if first_start_ is true.
6385
6386 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6387
6388         * scripts/midi2ly.py (split_track): add __repr__ members.
6389         (track_first_item): only return Item if not None. This fixes a
6390         problem when dumping a track that starts with an empty channel.
6391
6392         * python/midi.c: doc module.
6393
6394 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6395
6396         * Documentation/user/global.itely (Creating MIDI files): Fix
6397         compilation problem.
6398
6399 2005-11-22  Graham Percival  <gpermus@gmail.com>
6400
6401         * Documentation/user/basic-notation.itely: clarify dynamic
6402         padding text.
6403
6404         * Documentation/user/advanced-notation.itely: add unicode
6405         escape control example, whatever that is.  :)
6406
6407         * Documentation/user/global.itely: added "removing dynamics
6408         from MIDI" code.
6409
6410 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6411
6412         * VERSION (PATCH_LEVEL): release 2.7.18
6413
6414         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6415         System_start_delimiter_engraver by
6416         Nested_system_start_delimiter_engraver.
6417
6418         * lily/nested-system-start-delimiter-engraver.cc (struct
6419         Bracket_nesting_node): new class.
6420         (struct Bracket_nesting_group): new class
6421         (struct Bracket_nesting_staff): new class.
6422         (process_music): create hierarchy of grobs. This allows separate
6423         tuning of different SSDs. 
6424
6425         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6426         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6427
6428 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6429
6430         * lily/side-position-interface.cc (aligned_side): multiply
6431         staff_radius by 2.
6432
6433         * lily/script-engraver.cc (make_script_from_event): allow setting
6434         values to '()
6435
6436 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6437
6438         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6439
6440         * scm/define-grobs.scm (all-grob-descriptions): new grob
6441         NestedSystemStartDelimiter.
6442
6443         * input/regression/system-start-heavy-bar.ly: new file.
6444
6445         * lily/nested-system-start-delimiter-engraver.cc: new file.
6446
6447         * lily/nested-system-start-delimiter.cc: new file.
6448
6449         * input/regression/system-start-nesting.ly: new file.
6450
6451         * scm/define-grobs.scm (all-grob-descriptions): use X side
6452         positioning for positioning braces for nested contexts.
6453
6454         * lily/system-start-delimiter.cc (print): don't divide extent by
6455         staff_space.
6456         (print): use style iso. glyph.
6457         (staff_bracket): translate glyph inside routine already.
6458
6459 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6460
6461         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6462         names.
6463
6464 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6465
6466         * scm/define-context-properties.scm
6467         (all-user-translation-properties): rename figuredBassFormatter
6468         from newFiguredBassFormatter.
6469
6470         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6471
6472         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6473
6474         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6475
6476         * lily/beam.cc (calc_beaming): new function.
6477         (calc_shorten): new function.
6478
6479         * THANKS: add Edward Neeman.
6480
6481         * input/regression/accidental-clef-change.ly: new file.
6482
6483         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6484
6485         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6486
6487         * lily/clef-engraver.cc (inspect_clef_properties): reset
6488         localKeySignature for clef changes.
6489
6490 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6491
6492         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6493         add dummy definition that works in Linux and add information in
6494         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6495
6496         * Documentation/user/changing-defaults.itely (Modifying context
6497         plug-ins): Add index for \with.
6498
6499         * Documentation/user/music-glossary.tely (dal segno): Updated
6500         example to version >=2.6.
6501
6502 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6503
6504         * Documentation/user/instrument-notation.itely (Printing chord
6505         names): Reorder \chordmode and \repeat in one example.
6506
6507 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6508
6509         * VERSION: release 2.7.17
6510         
6511         * Documentation/topdocs/NEWS.tely (Top): add note about
6512         refactoring.
6513
6514         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6515         new function. Search region of 3 positions for best tie.
6516         (score_configuration): new function.
6517         (score_aptitude): new function.
6518         (generate_configuration): new function.
6519         (get_configuration): new function.
6520         (Tie_formatting_problem): new function
6521
6522         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6523
6524         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6525
6526         * THANKS: add Eduardo Vieira & Ralph Little
6527
6528         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6529         narrower.
6530
6531         * lily/include/tie-formatting-problem.hh (class
6532         Tie_formatting_problem): add Tie_details to
6533         Tie_formatting_problem. Update calling conventions.
6534
6535         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6536         config.make.
6537
6538         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6539
6540 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6541
6542         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6543         scm/define-context-properties.scm: Maintenance bugfix: make
6544         ligature brackets work again by removing obsolete ligature
6545         primitive callback push/pop.
6546
6547         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6548         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6549         value.
6550
6551 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6552
6553         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6554         used and do not call it a path.
6555         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6556
6557 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6558
6559         * lily/include/tie-formatting-problem.hh (class
6560         Tie_formatting_problem): new file.
6561
6562         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6563
6564         * Documentation/misc/ChangeLog-2.3:  new file.
6565
6566         * lily/audio-staff.cc (output): degarianize.
6567
6568 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6569
6570         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6571         Unset PYTHONOPTIMIZE.  Fixes install if set.
6572
6573 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6574
6575         * python/convertrules.py (conv): add warning about drums. 
6576
6577         * make/stepmake.make: include toplevel-version.make after config.make.
6578
6579         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6580         also allow python2.4
6581
6582         * config.make.in (configure-srcdir): remove GXX GCC vars.
6583
6584         * stepmake/aclocal.m4: don't do non-srcdir build with
6585         symlinks. Use inclusion, so the src directory name can be changed.
6586
6587 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6588
6589         * make/mutopia-vars.make:
6590         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6591         files.
6592
6593 2005-11-13  Werner Lemberg  <wl@gnu.org>
6594
6595         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6596         but the affected path.  This ensures that the (overlapping) outlines
6597         have the same direction, which is a necessary prerequisite for
6598         FontForge's algorithm to remove overlaps.
6599         Formatting.
6600
6601         * mf/feta-haak.mf: Formatting.
6602         (draw_bracket): Slightly modify outline to avoid an unnecessary
6603         corner.
6604         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6605         them from the affected paths.
6606
6607 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6608
6609         * mf/README: remove xpm / accordion notes.
6610
6611         * lily/tie-column-format.cc (set_chord_outline): add dots into
6612         skyline extents. This fixes tie formatting if the left head has dots.
6613
6614         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6615         space inside the staff.
6616         (get_configuration): shift another position if necessary in case
6617         of left head tie  
6618
6619 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6620
6621         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6622         buildscript-dir iso. $(depth)/buildscripts.
6623
6624         * tex/GNUmakefile (local-uninstall): remove
6625         music-drawing-routines.ps juggling.
6626
6627         * stepmake/stepmake/install-targets.make (local-install-files):
6628         prepend src-dir to install targets.
6629
6630         * lily/system-start-delimiter-engraver.cc
6631         (acknowledge_system_start_delimiter): use
6632         add_offset_callback(). This fixes translation of nested
6633         staffgroups.
6634
6635         * lily/grob-closure.cc (add_offset_callback): only encaps in
6636         simple_closure if it's a procedure.
6637         
6638         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6639         from bar-line.
6640
6641         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6642         remove-empty where pertinent.
6643
6644 2005-11-12  Graham Percival  <gpermus@gmail.com>
6645
6646         * Documentation/user/instrument-notation.itely: added
6647         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6648
6649 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6650
6651         * lily/GNUmakefile
6652         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6653         make picture in builddir, not srcdir.
6654
6655 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6656
6657         * VERSION: release 2.7.16
6658         
6659         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6660         shell arguments. 
6661
6662 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6663
6664         * Documentation/user/examples.itely (Piano templates): Minor
6665         modification to the Piano centered lyrics example.
6666
6667 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6668
6669         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6670         $BROWSER.
6671
6672         * Documentation/user/point-and-click.itely: simplify p&c
6673         instruction: don't configure firefox. Put lilypond-invoke-editor
6674         in front of the browser.
6675
6676         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6677         (run-browser): new function.
6678
6679         * lily/parser.yy (Lily_lexer): recognize Book
6680
6681         * lily/book.cc (clone): new function
6682
6683         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6684
6685 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6686
6687         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6688         Maintenance bugfix: reduce number of font related warnings by
6689         updating naming conventions for glyph-name.
6690
6691 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6692
6693         * scm/define-grobs.scm (all-grob-descriptions): add
6694         rhythmic-grob-interface to TabNoteHead.
6695
6696         * scm/layout-beam.scm (check-quant-callbacks): remove
6697         set_stem_lengths()
6698
6699 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6700
6701         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6702         alignment of centered divisiones.
6703
6704         * scm/scripts.scm (articulations): Maintenance bugfix:
6705         follow-into-staff -> quantize-position.
6706
6707         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6708         plica head in porrectus deminutus.
6709
6710 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6711
6712         * make/lilypond.fedora.spec.in (Group): add %clean section.
6713
6714         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6715         less then 1/5th of total length.  
6716         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6717
6718         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6719         events into EventChord. This fixes textspanners on mm rests. Fixes
6720         spanner-rest.ly
6721
6722         * lily/side-position-interface.cc (get_axis): read side-axis
6723         (set_axis): set side-axis.
6724
6725         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6726         properties everywhere.
6727
6728         * lily/spacing-spanner.cc (breakable_column_spacing): add
6729         average-spacing-wishes. Take maximum if not set.
6730         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6731
6732         * scm/define-grobs.scm (all-grob-descriptions): add
6733         average-spacing-wishes.
6734
6735         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6736         offset callbacks. This fixes alignment for Fingering objects.
6737
6738         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6739         space for key - timesig combination. 
6740
6741         * input/regression/script-stem-tremolo.ly (Module): new file.
6742
6743         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6744         to key sig.
6745
6746         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6747         Fixes: c-tremolo-script.ly.
6748         
6749         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6750
6751         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6752         
6753         * scm/define-grobs.scm (all-grob-descriptions): remove
6754         self-X-offset. Fixes alignment of octavate-8.
6755
6756         * scripts/lilypond-book.py (datadir): look in
6757         LILYPONDPREFIX/share/lilypond/current/
6758
6759         * GNUmakefile.in: symlink current to <VERSION>. 
6760
6761 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6762
6763         * lily/main.cc: eps listed as a backend.
6764
6765 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6766
6767         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6768
6769 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6770
6771         * lily/include/score.hh (class Score): remove texts_ member.
6772
6773         * lily/beam.cc (set_stem_lengths): force direction callback.
6774         (print): read quantized-positions, so we can force
6775         Beam::set_stem_lengths to occur.
6776         (rest_collision_callback): use common X parent. 
6777
6778 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6779
6780         * flower/file-path.cc (find): Bugfix: Return name of file found.
6781
6782         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6783         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6784         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6785
6786 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6787
6788         * flower/offset.cc: idem.
6789
6790         * mf/*.mf: update email address.
6791
6792         * lily/font-config-scheme.cc:  new file.
6793
6794         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6795
6796         * lily/*:  cs.uu.nl -> xs4all.nl
6797
6798         * VERSION (PATCH_LEVEL): release 2.7.15
6799
6800         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6801         spec files.
6802
6803         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6804
6805 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6806
6807         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6808
6809         * lily/staff-performer.cc (process_music): add audio
6810         elements. This makes MIDI instrument changes work once again.
6811
6812         * lily/main.cc (LY_DEFINE): add gmane address.
6813
6814         * lily/beam.cc: remove calc_positions()
6815
6816         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6817         original_ in private scope.
6818         (class Grob): drop pscore_ pointer, change to output_def pointer.
6819         (class Grob): cleanup class definition.
6820
6821         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6822
6823 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6824
6825         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6826         absolute.  Better diagnostics.
6827
6828         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6829         This makes lilypond run from the build directory using argv0
6830         relocation (without any --prefix or LILYPONDPREFIX setting).
6831
6832 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6833
6834         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6835
6836         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6837         with simple-closure.
6838
6839         * lily/self-aligment-interface.cc (set_align_self): new function
6840         (set_center_parent): new function.
6841
6842         * lily/side-position-interface.cc (set_axis): new function.
6843
6844         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6845         generic code. 
6846
6847         * scm/define-grob-properties.scm (all-user-grob-properties):
6848         remove [XY]-offset-callbacks add [YX]-offset
6849         
6850 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6851
6852         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6853         entry for time signatures after breathing signs. Bug report by
6854         Scott Russell.
6855
6856 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6857
6858         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6859         not absolute, make it absolute using PATH.
6860
6861 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6862
6863         * python/midi.c (initmidi): Fix type for mingw.
6864
6865 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6866
6867         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6868
6869         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6870         cross compiling.
6871
6872         * stepmake/aclocal.m4: Support python cross compiling.
6873
6874         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6875         Add mingw section.
6876
6877 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6878
6879         * scm/output-lib.scm (chain-grob-member-functions): replace
6880         chained-callback.cc
6881
6882         * lily/chained-callback.cc (Module): remove file.
6883
6884         * lily/rest-collision.cc (force_shift_callback_rest): change to
6885         chained callback.
6886
6887         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6888
6889         * lily/grob.cc (y_parent_positioning): remove axis argument from
6890         parent_positioning callbacks.
6891         (Grob): junk init code
6892         (get_offset): use generic property callbacks for
6893         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6894         (axis_parent_positioning): new function
6895         (axis_offset_symbol): new function
6896         (chain_offset_callback): new function
6897         (add_offset_callback): new function
6898
6899         * lily/beam.cc (rest_collision_callback): change signature; this
6900         is now a chained callback.
6901
6902         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6903         callback administration.
6904
6905         * lily/simple-closure.cc: new file. Smob type that allows "grob
6906         member functions",
6907
6908             (ly:make-simple-closure FUNC A B)
6909
6910         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6911         in various ways.
6912
6913         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6914         callbacks.
6915
6916         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6917
6918         * lily/rest.cc (polyphonic_offset_callback): remove.
6919
6920         * lily/script-engraver.cc (try_music): remove bool* argument.
6921
6922         * scm/script.scm (default-script-alist): set quantize-position
6923         appropriately.
6924
6925         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6926
6927         * lily/side-position-interface.cc (aligned_side): move staff
6928         position quantization from
6929         Side_position_interface::quantised_position().
6930         (quantised_position): remove
6931         
6932 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6933
6934         * input/regression/beam-quant-standard.ly: reindent, set
6935         debug-beam-quanting to #t.
6936
6937         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6938         10000 if this is a "hard" concave beam.
6939
6940         * lily/beam.cc (calc_least_squares_positions): change from
6941         calc_least_squares_dy
6942         (set_stem_lengths): this is now a chained callback.
6943
6944         * lily/context-property.cc (execute_general_pushpop_property):
6945         bugfix override with procedure should have effect.
6946
6947         * scm/define-grob-properties.scm (all-internal-grob-properties):
6948         remove position-callbacks.
6949
6950         * scm/define-grobs.scm (all-grob-descriptions): use
6951         ly:make-callback-chain for positions property.
6952
6953         * scm/layout-beam.scm (check-quant-callbacks): return list of
6954         chained callbacks.
6955
6956         * scm/lily.scm (type-p-name-alist): add callback-chain
6957
6958         * lily/lily-guile.cc (type_check_assignment): type check failure
6959         is warning not message.
6960
6961         * lily/grob-property.cc (try_callback): walk callback chain if
6962         appropriate.
6963
6964         * lily/chained-callback.cc: new file. new smob type.
6965
6966         * lily/lily-guile.cc (procedure_arity): new function.
6967
6968 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6969
6970         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6971
6972 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6973  
6974         * Documentation/user/instrument-notation.itely (Figured bass):
6975         describe new features
6976
6977 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6978
6979         * lily/beam.cc (calc_least_squares_dy): use property callback.
6980
6981         * lily/beam-concave.cc (calc_concaveness): use property callback.
6982
6983         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6984
6985 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6986
6987         * HACKING: Update.
6988
6989 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6990
6991         * scm/layout-page-layout.scm (page-headfoot): annotate
6992         pagetopspace too.
6993
6994         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6995
6996         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6997         doesn't take y-space.
6998
6999         * scm/paper.scm (paper-alist): fix A7 dimensions. 
7000
7001 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
7002
7003         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7004         src-wildcard, remove $(wildcard).
7005
7006         * po/GNUmakefile (PO_FILES): 
7007         * ps/GNUmakefile (PS_FILES): 
7008         * tex/GNUmakefile (TEX_FILES): 
7009         * cygwin/GNUmakefile (POSTINSTALLS):
7010         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7011         some wildcard calls.
7012
7013 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7014
7015         * THANKS: add Thomas Bushnell.
7016
7017 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
7018
7019         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7020         (lilypond-main): Redirect to gui-main if 'gui is set.
7021
7022         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7023         for alternative installations kludging s/share/lib/g
7024         LILYPONDPREFIX. 
7025
7026         * SConstruct (libdir_package_version): Define.
7027
7028         * python/SConscript: 
7029         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7030         module in libdir.  
7031
7032 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7033
7034         * lily/main.cc: clarify --safe.
7035
7036 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7037
7038         * VERSION: release 2.7.14
7039         
7040         * Documentation/user/*.itely: remove minimumVerticalExtent.
7041
7042         * scm/define-grobs.scm (all-grob-descriptions): remove
7043         RemoveEmptyVerticalGroup
7044
7045         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7046
7047         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7048         compile on MOSX
7049
7050         * python/convertrules.py (conv): add rules.
7051
7052         * lily/grob.cc: remove is_empty()
7053
7054         * lily/grob-property.cc: remove add_to_list_property().
7055
7056         * scripts/convert-ly.py (datadir): add prefix switching hack to
7057         .py too.
7058
7059         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7060         space-function tweak.
7061
7062         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7063
7064         * scm/define-grob-properties.scm (all-user-grob-properties):
7065         remove callback property.
7066
7067         * lily/include/grob.hh (class Grob): remove property_callbacks_
7068         member. Properties of procedure type are assumed to be callbacks.
7069
7070         * lily/ligature-engraver.cc (override_stencil_callback):
7071         rewrite. Use noteHeadLigaturePrimitive as source.
7072
7073         * scm/define-grob-properties.scm (all-internal-grob-properties):
7074         remove ligature-primitive-callback
7075
7076         * lily/include/dimension-cache.hh (class Dimension_cache): make
7077         class, with Grob as friend.
7078
7079         * lily/grob.cc: remove set_extent_callback(), set_extent() and
7080         has_extent_callback()
7081
7082         * scm/translation-functions.scm (format-new-bass-figure): read
7083         figuredBassPlusDirection
7084
7085         * scm/define-context-properties.scm
7086         (all-user-translation-properties): add figuredBassPlusDirection.
7087
7088         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7089
7090         * lily/align-interface.cc (set_ordered): new function.
7091
7092         * lily/grob.cc (flush_extent_cache): rewrite.
7093
7094         * lily/dimension-cache.cc (Dimension_cache): cache extent as
7095         Interval pointer directly.
7096
7097         * lily/main.cc (setup_paths): insert extra / .
7098         (setup_paths): junk cff entry.
7099
7100         * lily/font-config.cc (init_fontconfig): only add type1 / otf
7101         directories.
7102
7103         * lily/axis-group-engraver.cc (finalize): remove
7104         extraVerticalExtent, minimumVerticalExtent verticalExtent.
7105
7106         * lily/grob.cc (Grob): don't set extent from ctor.
7107         (extent): use property callbacks. 
7108
7109         * lily/axis-group-interface.cc: remove set_axes() function.
7110
7111         * lily/grob-property.cc (del_property): new function.
7112
7113 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7114
7115         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7116         
7117 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7118
7119         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7120
7121 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7122
7123         * mf/SConscript: Updates.
7124
7125         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7126
7127         * stepmake/stepmake/*:
7128         * */GNUmakefile:
7129         * config.make.in:
7130         * GNUmakefile.in:
7131         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7132         from any directory in build-dir.  Cleanups.
7133
7134         * make/srcdir.make.in: Remove.
7135
7136         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7137
7138         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7139         main).
7140
7141         * lily/SConscript: Remove ttftools.
7142
7143         * SConstruct: Resurrect.
7144
7145 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7146
7147         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7148         Y coordinate. 
7149
7150         * lily/paper-book.cc (add_score_title): put Paper_score title into
7151         systems_ list.
7152
7153         * scm/translation-functions.scm (format-new-bass-figure): also
7154         allow plus in combination with _
7155
7156 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7157
7158         * VERSION: 2.7.13 released.
7159
7160         * lily/note-collision.cc (check_meshing_chords): don't wipe
7161         stencil, merely set transparent.
7162
7163         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7164         (Top): document #'callbacks.
7165         (Top): document nested \override.
7166
7167         * input/regression/figured-bass.ly: update for slash and pluses.
7168
7169         * input/regression/figured-bass-continuation-forbid.ly (Module):
7170         new file.
7171
7172         * scm/translation-functions.scm (format-new-bass-figure): use
7173         slashed-digit if diminished is set.
7174         (format-new-bass-figure): add + if 'augmented is set.
7175
7176         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7177
7178         * input/test/piano-staff-distance.ly: remove file.
7179
7180         * Documentation/user/advanced-notation.itely (Formatting cue
7181         notes): use length-fraction for making stems/beams smaller.
7182
7183         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7184         modifications.
7185
7186         * lily/new-figured-bass-engraver.cc: new property
7187         centerFiguredBassContinuations
7188
7189         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7190         use callbacks.
7191
7192         * lily/context-property.cc (execute_general_pushpop_property):
7193         robustness checks.
7194
7195         * input/regression/override-nest.ly: new file.
7196
7197         * python/convertrules.py (FatalConversionError.subber): conversion
7198         rule for #'callbacks
7199
7200         * input/regression/override-nest.ly: new function.
7201
7202         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7203         #c too. 
7204
7205         * lily/context-property.cc (lookup_nested_property): new function.
7206         (evict_from_alist): new function.
7207         (general_pushpop_property): new function.
7208         (execute_general_pushpop_property): rewrite. Support nested
7209         properties too.
7210
7211 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7212
7213         * lily/beam.cc: use length-fraction too.
7214
7215         * scm/define-grob-properties.scm (all-user-grob-properties):
7216         remove property flag-width-function
7217         (all-user-grob-properties): remove space-function.
7218
7219         * scm/layout-beam.scm: remove flag-width-function.
7220
7221         * lily/beam.cc: remove flag-width-function
7222
7223         * scm/layout-beam.scm: remove beam dir functions.
7224
7225         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7226
7227         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7228         for easier grace tweaks.
7229
7230         * lily/beam.cc: remove dir-function.
7231
7232         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7233
7234         * lily/grob.cc: remove spacing-procedure.
7235
7236         * lily/note-head.cc (calc_stem_attachment): new function.
7237         (internal_print): use callback to get glyph-name.
7238
7239         * lily/grob-property.cc (get_interfaces): new function.
7240
7241         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7242
7243         * lily/stem.cc (calc_stem_end_position): new function.
7244         (calc_length): new function.
7245         document details for stem.
7246         remove Stem::get_direction()
7247
7248         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7249
7250         * lily/grob-property.cc (set_callback): new function.
7251
7252         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7253
7254         * lily/item-scheme.cc: new file.
7255
7256         * lily/bar-line.cc (before_line_breaking): remove function.
7257         remove bar-size-procedure, break-glyph-function
7258
7259         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7260
7261         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7262
7263         * lily/system-start-delimiter.cc (print): suicide from
7264         here. Remove after_line_breaking_callback.
7265
7266         * lily/script-interface.cc (calc_direction): use callback for direction.
7267
7268         * lily/side-position-interface.cc (aligned_side): don't use
7269         Side_position_interface::get_direction directly. Use callback. 
7270
7271         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7272         calculate stencil.
7273         (get_print_stencil): rename from get_stencil: create stencil with
7274         transparency, color and cause. 
7275
7276         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7277
7278         * python/convertrules.py (conv): insert temporary warning rule.
7279
7280         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7281
7282         * lily/grob-property.cc (try_callback): remove marker if applicable.
7283
7284         * lily/grob.cc: elucidate doc about after/before-line-breaking
7285
7286         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7287
7288         * lily/stem.cc (height): idem.
7289
7290         * lily/stem-tremolo.cc: idem.
7291
7292         * lily/slur.cc (height): don't use get_uncached_stencil()
7293
7294         * lily/rest.cc (y_offset_callback): use offset callback
7295         iso. after-line-breaking callback.
7296
7297         * lily/grob.cc: change after/before-line-breaking-callback to
7298         after/before-line-breaking dummy properties.
7299
7300         * lily/include/grob.hh: remove Grob_status.
7301
7302         * scm/define-context-properties.scm
7303         (all-user-translation-properties): remove verticalAlignmentChildCallback
7304
7305         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7306         (calc_direction): use callback
7307         (calc_positions): use callback.
7308
7309         * lily/tie.cc (calc_direction): use callback. Only call parent
7310         positioning for more than one tie.
7311
7312         * lily/tie-column.cc (calc_positioning_done): use callback
7313
7314         * lily/slur-scoring.cc (calc_control_points): use callback
7315
7316         * lily/slur.cc (calc_direction): use callback.
7317
7318         * lily/note-collision.cc (force_shift_callback): remove.
7319
7320         * lily/dot-column.cc (force_shift_callback): remove. Use
7321         other_axis_parent_positioning.
7322
7323         * lily/grob.cc (other_axis_parent_positioning): new function.
7324         (same_axis_parent_positioning): new function
7325
7326         * lily/align-interface.cc (alignment_callback): remove function.
7327
7328         * lily/note-collision.cc (calc_positioning_done): use callback.
7329
7330         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7331         (calc_direction): idem.
7332         remove print function.
7333
7334         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7335
7336         * lily/dot-column.cc (calc_positioning_done): use callback.
7337
7338         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7339
7340         * lily/beam.cc (calc_direction): use pseudo-property for beam
7341         direction callback.
7342         (calc_positions): use callback 
7343
7344         * lily/align-interface.cc (calc_positioning_done): use
7345         callback. Fold fixed  distance and normal alignment in one function.
7346
7347         * lily/stem.cc (calc_stem_end_position): use callback.
7348         (calc_positioning_done): idem.
7349         (calc_direction): idem.
7350         (calc_stem_end_position): idem
7351         (calc_stem_info): idem.
7352
7353         * lily/grob-property.cc (get_property_data): new function: 
7354         (try_callback): new function.
7355
7356         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7357         callbacks property.
7358
7359         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7360
7361 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7362
7363         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7364         tie
7365         has no heads.
7366         
7367         * lily/include/*.hh (Module): compile fixes.
7368
7369 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7370
7371         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7372         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7373         instead of (char-syntax nil), thanks to Milan Zamazal.
7374
7375 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7376
7377         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7378         dist.
7379
7380         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7381         themselves.
7382
7383 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7384
7385         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7386         add class_name() method.
7387
7388         * lily/music-scheme.cc: remove ly:music-name.
7389
7390 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7391
7392         * cygwin/postinstall-lilypond.sh: Remove cruft.
7393
7394         * cygwin/postremove-lilypond.sh: Remove.
7395
7396         * cygwin/GNUmakefile (default): Remove postremove rules.
7397
7398 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7399
7400         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7401         even header too.
7402         
7403         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7404         MacOS 9 users.
7405
7406         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7407         consider break index for broken spanner.
7408
7409         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7410         characters from string before splitting.
7411
7412 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7413
7414         * scm/framework-ps.scm (output-preview-framework): use
7415         is-book-title to determine whether to chop off the booktitle.
7416
7417         * lily/paper-book.cc (systems): init from book-title-properties
7418         (add_score_title): init score-title-properties.
7419
7420         * ly/paper-defaults.ly: add {score,book}-title-properties.
7421
7422         * scm/document-backend.scm (lookup-interface): error message if
7423         using unknown interface.
7424
7425         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7426         edge-height.
7427
7428         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7429         make_bracket.
7430         (make_bracket): new function.
7431
7432         * scm/lily.scm (define-scheme-options): add paper-size option.
7433
7434         * ly/declarations-init.ly (laissezVibrer): get paper size from
7435         -dpaper-size
7436
7437         * scm/translation-functions.scm: use \fontsize for changing the
7438         fontsize.
7439
7440         * scm/define-grobs.scm (all-grob-descriptions): set
7441         between-length-limit to 1.0
7442
7443         * lily/tie-helper.cc: add between_length_limit_ detail property.
7444
7445         * mf/feta-bolletjes.mf: typos.
7446
7447         * lily/note-head.cc (internal_print): don't shadow idx
7448         parameter. This fixes wrong attachment for do shape heads.
7449
7450 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7451
7452         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7453
7454         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7455
7456         * scm/layout-slur.scm: rename from slur.scm
7457
7458         * scm/layout-page-layout.scm: rename from page-layout.scm
7459
7460         * scm/layout-beam.scm: rename from beam.scm
7461
7462         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7463         bass-figure-interface
7464
7465         * lily/new-figured-bass-engraver.cc (process_music): add
7466         implicitBassFigures property.
7467         
7468         * scm/define-markup-commands.scm (pad-x): new markup.
7469
7470         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7471         minimumVerticalExtent on FiguredBass context.
7472
7473         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7474         case the continuation crosses a line break.
7475
7476 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7477
7478         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7479         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7480         absolute file name bug.  
7481
7482 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7483
7484         * VERSION (PACKAGE_NAME): release 2.7.12
7485
7486         * input/regression/figured-bass-continuation-center.ly: new file.
7487
7488         * input/regression/beam-outside-beamlets.ly: new file.
7489
7490         * lily/beam.cc (set_beaming): don't clip edges.
7491         (connect_beams): don't clip edges.
7492
7493         * lily/beaming-info.cc (clip_edges): new function.
7494
7495         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7496
7497         * Documentation/user/instrument-notation.itely (Figured bass):
7498         demonstrate extenders, update seealso links.
7499
7500         * scm/titling.scm (marked-up-headfoot): change tagline
7501         handling. tagline = ##f will blank the tagline as well.
7502
7503 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7504
7505         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7506
7507         * lily/new-figured-bass-engraver.cc (struct
7508         New_figured_bass_engraver): add new_music_found_ member.
7509
7510         * lily/lilypond-version.cc (Lilypond_version): deal with
7511         incorrectly formatted version strings. 
7512
7513         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7514         New_figured_bass_engraver by default.
7515
7516         * lily/ttf.cc (print_trailer): only define glyph names when
7517         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7518
7519 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7520
7521         * lily/horizontal-bracket.cc (make_bracket): new function.
7522
7523         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7524         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7525         BassFigureLine, BassFigureAlignment
7526
7527         * lily/new-figured-bass-engraver.cc (process_music): new file.
7528
7529         * lily/figured-bass-continuation.cc: new file.
7530
7531         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7532         new file.
7533
7534 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7535
7536         * scripts/lilypond-book.py: Bug fix, put the quote around the
7537         actual score for LaTeX documents.
7538
7539         * scm/define-grobs.scm (all-grob-descriptions): Change
7540         collapse-height of the SystemStartBracket grob to 5.0, 
7541         so the bracket disappears for single stave score lines (similarly
7542         to SystemStartBraces). 
7543
7544         * Documentation/user/advanced-notation.itely (Polymetric
7545         notation): Clarify the use of compressMusic.
7546
7547         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7548         that the grace spacer note in other staves need the same duration
7549         and document the stroke-style property.
7550
7551 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7552
7553         * Documentation/user/global.itely (Vertical spacing): document
7554         alignment-extra-space and fixed-alignment-extra-space.
7555
7556         * Documentation/topdocs/NEWS.tely (Top): add entry.
7557
7558         * input/regression/alignment-vertical-spacing.ly: new file.
7559
7560         * python/convertrules.py (conv): add rule.
7561
7562         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7563
7564         * lily/align-interface.cc (stretch_after_break): new
7565         function. Read fixed-alignment-extra-space property.
7566         (align_elements_to_extents): read alignment-extra-space property.
7567
7568         * lily/lily-guile.cc (robust_scm2dir): new function.
7569
7570         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7571         (annotate-space-left): new function. Annotate space left on page. 
7572         (annotate-y-interval): new function.
7573         (paper-system-annotate-last): new function. Annotate bottom-space.
7574
7575         * mf/feta-beugel.mf (y): 
7576
7577 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7578
7579         * VERSION (PACKAGE_NAME):  release 2.7.11
7580
7581         * scm/lily-library.scm (interval-translate): new function
7582         (interval-center): new function. 
7583
7584         * scm/page-layout.scm (paper-system-annotate): new function. Add
7585         arrows for dimensions.
7586  
7587         * scm/stencil.scm (dimension-arrows): new function.
7588
7589         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7590
7591         * input/regression/page-spacing.ly: add annotatespacing
7592
7593         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7594         (LY_DEFINE): new function ly:paper-system-set-property!
7595
7596         * Documentation/user/global.itely (Paper size): explain how to add
7597         sizes.
7598
7599         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7600         correspond to GS's definition.
7601
7602         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7603         tuplet bracket.
7604         (print): only connect to next bracket if the next one is alive.
7605         (print): set padding to 0.0 if the bound is a breakable
7606         column. This makes tupletFullLength brackets reach up to the staff
7607         line if it doesn't connect to the next line.
7608
7609 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7610
7611         * lily/bar-number-engraver.cc: correct docs.
7612
7613         * scm/output-lib.scm (first-bar-number-invisible): rename from
7614         default-bar-number-visibility
7615
7616 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7617
7618         * scm/define-music-properties.scm (all-music-properties): remove
7619         predicate property.
7620
7621 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7622
7623         * po/fi.po: refresh.
7624
7625 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7626
7627         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7628         superfluous s1.
7629         (disappear): bugfix.
7630
7631         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7632
7633         * lily/include/paper-system.hh (class Paper_system): remove
7634         staff_extents_ member.
7635
7636         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7637
7638         * lily/include/paper-system.hh (class Paper_system): remove
7639         number_ variable. Remove is_title_. Remove break_before_penalty_
7640
7641         * lily/paper-book.cc (systems): use 'number property iso. number_
7642         member.
7643
7644         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7645         remove ly:paper-system-number.
7646
7647         * scm/lily-library.scm (paper-system-title?): new function.
7648
7649         * lily/book.cc (process): bugfix: flip ?: cases. 
7650
7651         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7652         add outputProperty.
7653
7654         * ly/music-functions-init.ly: add outputProperty music function.
7655
7656         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7657
7658         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7659         and next-padding.
7660         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7661
7662         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7663
7664         * lily/paper-system.cc (internal_get_property): new function.
7665
7666         * Documentation/user/global.itely (Vertical spacing): refer to
7667         page-spacing.ly
7668
7669         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7670         pagetopspace
7671
7672         * input/regression/page-spacing.ly: new file.
7673
7674         * input/regression/page-top-space.ly: new file.
7675
7676         * lily/spacing-spanner.cc: cmath -> math.h
7677
7678         * lily/paper-system.cc (read_left_bound): new function. Read
7679         line-break-system-details from left bound to determine extents.
7680  
7681         * Documentation/user/programming-interface.itely (Using LilyPond
7682         syntax inside Scheme): change applyxxx -> applyXxx.
7683
7684         * ly/music-functions-init.ly: add outputProperty music function.
7685
7686         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7687
7688         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7689
7690         * python/convertrules.py (conv): rule
7691
7692         * ly/music-functions-init.ly: applyxxx -> applyXxx
7693
7694         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7695         TabVoice to Voice.
7696
7697 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7698
7699         * flower/include/real.hh: include <math.h> iso. <cmath>
7700
7701         * flower/include/offset.hh: include real.hh
7702
7703 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7704
7705         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7706         fix example, now that 'interfaces is no longer directly available.
7707
7708         * lily/book.cc (process): don't crash if paper == NULL.
7709
7710         * po/fr.po: update.
7711
7712 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7713
7714         * scm/define-music-types.scm (music-descriptions): set length and
7715         start-callback for QuoteMusic
7716
7717 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7718
7719         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7720         arguments. Fixes compilation error with gcc 3.3.
7721
7722 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7723
7724         * VERSION: release 2.7.10
7725
7726         * stepmake/stepmake/python-module-rules.make
7727         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7728
7729         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7730         real.hh
7731
7732 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7733
7734         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7735         -Werror. Otherwise GCC barfs over various optimizations.
7736
7737         * scm/define-grob-properties.scm (all-internal-grob-properties):
7738         add note-head property
7739
7740         * Documentation/user/instrument-notation.itely (Laissez vibrer
7741         ties): new node.
7742
7743         * input/regression/laissez-vibrer-ties.ly: new file.
7744
7745         * lily/laissez-vibrer-engraver.cc: new file.    
7746
7747         * lily/include/tie-column-format.hh: new file.
7748
7749         * lily/tie-column-format.cc: new file. 
7750
7751         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7752
7753         * lily/laissez-vibrer-tie.cc: new file.
7754
7755         * lily/include/laissez-vibrer-tie.hh: new file.
7756
7757         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7758
7759         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7760
7761         * scm/define-grobs.scm (all-grob-descriptions): add
7762         LaissezVibrerTie, LaissezVibrerTieColumn
7763
7764         * lily/tie-column.cc (set_tie_config_directions): new function
7765         (final_shape_adjustment): new function.
7766         (shift_small_ties): new function.
7767
7768         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7769
7770         * lily/include/tie.hh (struct Tie_details): add x_gap_
7771         (struct Tie_configuration): add head_position_
7772
7773         * lily/tie-column.cc (set_chord_outline): new function.
7774
7775         * mf/cmr.enc.in:  remove file.
7776
7777 2005-09-11  Graham Percival  <gpermus@gmail.com>
7778
7779         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7780
7781 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7782
7783         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7784         reduce aliasing effects.
7785
7786         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7787         box in skyline.
7788
7789 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7790
7791         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7792
7793         * flower/include/real.hh: std::fabs too.
7794
7795 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7796
7797         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7798
7799         * lily, flower: Include C++ iso C headers.  Import namespace std
7800         throughout.
7801
7802         * lily/side-position-interface.cc: 
7803         * lily/scm-hash.cc: 
7804         * lily/note-head.cc: 
7805         * lily/include/includable-lexer.hh: 
7806         * flower/include/string-data.icc: Remove using std::*.
7807
7808         * lily, flower: Include C++ iso C headers.  Import namespace std
7809         throughout.
7810
7811         * lily/side-position-interface.cc: 
7812         * lily/scm-hash.cc: 
7813         * lily/note-head.cc: 
7814         * lily/include/includable-lexer.hh: 
7815         * flower/include/string-data.icc: Remove using std::*.
7816
7817         * Documentation/user/instrument-notation.itely (Entering lyrics):
7818         Multiple latin-1->utf-8 conversion fix.
7819
7820         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7821
7822 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7823
7824         * lily/tie.cc (get_configuration): also avoid dots for non-space
7825         situations.
7826
7827 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7828
7829         * Documentation/user/instrument-notation.itely: Bugfix.
7830
7831 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7832
7833         * tex/GNUmakefile: don't install texinfo.tex
7834
7835         * tex/ : cleanup: remove unused files.
7836
7837         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7838
7839         * flower/include/real.hh: using std::{isnan,isinf}
7840         
7841         * VERSION (PATCH_LEVEL): release 2.7.9
7842
7843 2005-09-05  Graham Percival  <gpermus@gmail.com>
7844
7845         * Documentation/user/ instrument-notation.itely,
7846         advanced-notation.itely: minor tweaks.
7847
7848         * input/test/script-chart.ly: add item padding.
7849
7850 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7851
7852         * flower/offset.cc: use math.h iso. <cmath>
7853
7854         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7855         of IE users.
7856
7857         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7858         (widen-left-stencil-edges): new function. Fix alignment problems
7859         with LaTeX includegraphics.
7860
7861         * lily/text-interface.cc (interpret_markup): use abort().
7862
7863 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7864
7865         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7866
7867         * lily/tie.cc (get_configuration): update bezier shape as we
7868         change Y positions.
7869         (get_configuration): don't move large ties if we're outside of the
7870         staff.
7871
7872 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7873
7874         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7875         
7876 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7877
7878         * .cvsignore: Add auto-generated configure files and then some.
7879
7880 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7881
7882         * scm/define-grobs.scm (DynamicLineSpanner): Add
7883         X-extent-callback.  Fixes hairpin-slur collision.
7884
7885 2005-08-31  Graham Percival  <gpermus@gmail.com>
7886
7887         * Documentation/user/advanced-notation.itely,
7888         basic-notation.itely: minor changes.
7889
7890 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7891
7892         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7893         \linebreak between each .eps file if \betweenLilyPondSystem is
7894         undefined. 
7895
7896         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7897         music): Document the \linebreak
7898
7899         * Documentation/user/lilypond-book.itely,
7900         input/tutorial/lbook-latex-test.tex,
7901         Documentation/user/examples.itely: Remove \usepackage{graphics}
7902
7903 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7904
7905         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7906
7907         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7908         compat bugfix.
7909
7910         * scripts/lilypond-book.py (PREAMBLE_LY): define
7911         inside-lilypond-book
7912         (modify_preamble): new function. Insert \RequirePackage{graphics}
7913         when no {graphics found in preamble.  
7914
7915 2005-08030  Graham Percival  <gpermus@gmail.com>
7916
7917         * Documentation/user/basic-notation.itely, global.itely,
7918         tutorial.itely: misc small changes.
7919
7920 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7921
7922         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7923         VERSION.
7924
7925 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7926
7927         * lily/tie-column.cc (new_directions): put Tie down on center
7928         staff line. 
7929
7930         * lily/script-interface.cc (before_line_breaking): use
7931         Grob::programming_error
7932
7933         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7934
7935         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7936         of splitext.
7937
7938 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7939
7940         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7941
7942 2005-08-29  Werner Lemberg  <wl@gnu.org>
7943
7944         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7945         the `*.scale.pfa' files to avoid warnings.
7946
7947 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7948
7949         * lily/tempo-performer.cc (process_music): idem.
7950
7951         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7952
7953 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7954
7955         * Documentation/user/advanced-notation.itely (Text markup): not a
7956         fragment.
7957
7958         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7959
7960         * lily/staff-performer.cc (initialize): add tempo/name to
7961         audio_staff_
7962
7963
7964 2005-08-26  Graham Percival  <gpermus@gmail.com>
7965
7966         * Documentation/user/advanced.itely: add text-only example.
7967
7968         * Documentation/user/invoking.itely: add index entries for
7969         convert-ly.
7970
7971         * Documentation/user/ tutorial.itely, basic-notation.itely:
7972         small fixes suggested by Steve D.  Thanks!
7973
7974 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7975
7976         * input/regression/markup-bidi-pango.ly: new file.
7977
7978         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7979         standard. Remove #ifdef. Remove memleak.
7980         (text_stencil): use text_dir to decide how to composite items.
7981         (text_stencil): determine uniform text direction for the entire
7982         string.
7983
7984         * scripts/lilypond-book.py (output_name): remove
7985         latex_filter_cmd. Non-portable to non-Unix systems. 
7986         (get_latex_textwidth): use File.write and os.unlink() instead.
7987
7988         * THANKS: add Vicente & Trevor.
7989
7990         * lily/grob.cc (discretionary_processing): look up origin for
7991         programming_error too. 
7992
7993         * input/regression/tie-broken.ly: new file.
7994
7995         * lily/tie-column.cc (set_chord_outlines): set outline for line
7996         break case too.
7997         
7998 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7999
8000         * lily/pango-font.cc (text_stencil): don't translate glyphs in
8001         unscaled transform, just translate stencils.
8002
8003         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
8004         MIDI.
8005
8006         * scm/define-markup-commands.scm (wordwrap-string): use
8007         text-direction
8008         (wordwrap-stencils): idem.
8009         (line): idem.
8010         (fill-line): idem.
8011         (wordwrap-stencils): translate last line to right for
8012         text-direction = LEFT.
8013
8014         * scm/define-grob-properties.scm (all-user-grob-properties): add
8015         text-direction.
8016
8017 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8018
8019         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8020         when copying a Lily_parser object.
8021
8022 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8023
8024         * scm/define-markup-commands.scm (null): add null markup.
8025
8026 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
8027
8028         * lily/item.cc: Add documentation of center-invisible
8029
8030 2005-08-24  Graham Percival  <gpermus@gmail.com>
8031
8032         * Documentation/user/advanced-notation.itely: add info about
8033         raising text.
8034
8035         * Documentation/user/programming-interface.itely: fix example
8036         involving raised text.
8037
8038 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8039
8040         * lily/beam.cc (print): fix X start/end points of isolated
8041         beamlets.
8042
8043         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8044
8045         * lily/multi-measure-rest.cc (set_text_rods): new function.
8046
8047         * lily/vertical-align-engraver.cc (process_music): call
8048         Align_interface::set_axis(). This forces #'elements to be ordered,
8049         preventing random vertical reordering of staves.
8050
8051         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8052         add avoid-slur property. 
8053
8054         * Documentation/user/basic-notation.itely (Measure repeats): add
8055         countPercentRepeats example.
8056
8057         * Documentation/user/advanced-notation.itely (Other text markup
8058         issues): remove remark about normal-font.  We have \normal-text
8059
8060         * input/regression/tie-chord.ly: add note about remaining bugs.
8061
8062         * lily/tie.cc (print): try Tie_column::set_directions () if
8063         control-points not yet defined.
8064
8065 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8066
8067         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8068         extent. This fixes braces falling out of the EPS bbox.
8069
8070         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8071         exactly to bbox.
8072
8073 2005-08-23  Graham Percival  <gpermus@gmail.com>
8074
8075         * {various} : change #up->#UP and #down->#DOWN.
8076
8077         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8078
8079         * Documentation/user/advanced-notation.itely: clarify
8080         what objects handles text on a multimeasure rest.
8081
8082 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8083
8084         * VERSION (PATCH_LEVEL): release 2.7.7
8085
8086 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8087
8088         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
8089
8090         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8091
8092         * input/regression/*.ly: formatting clean-up. Default layout
8093         before music expression.
8094
8095         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8096         romanze28-2 example.
8097
8098         * scm/ps-to-png.scm: remove dir-re function.
8099         (make-ps-images): generate page names, instead of globbing them.
8100         This brings down LilyPond memory usage for make web by a factor
8101         10. 
8102
8103         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8104         don't use glob. With 3000 files, globbing
8105         Documentation/user/out-www/ can take too much time. 
8106         
8107         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8108
8109         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8110
8111         * input/regression/tie-manual.ly: new file
8112
8113         * input/regression/tie-chord.ly: update.
8114
8115         * flower/include/interval.hh (struct Interval_t): 
8116
8117         * lily/tie.cc (distance): new function 
8118         (height): new function.
8119         (init): new function
8120         (Tie_details): new struct.
8121
8122         * lily/skyline.cc (skyline_height): new function.
8123
8124         * lily/tie-column.cc (set_chord_outlines): new function.
8125         (new_directions): read tie-configuration
8126
8127         * lily/skyline.cc: fix ASCII art.
8128         
8129 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8130
8131         * python/convertrules.py (string_or_scheme): Fix spelling error
8132
8133 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8134         
8135         * lily/tie-column.cc (set_directions): set directions only once.
8136         (add_configuration): new function.
8137
8138         * lily/tie.cc (set_control_points): new function
8139
8140         * lily/tie-column.cc (new_directions): new function.
8141
8142         * ly/music-functions-init.ly: set 'pitch property
8143         iso. trill-pitch. This makes \relative work with \pitchedTrill
8144
8145         * lily/tie.cc (get_configuration): new function. Don't generate
8146         control points, rather, generate configuration.
8147         remove head-pair property.
8148
8149         * lily/include/tie.hh (struct Tie_configuration): new struct.
8150
8151 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8152
8153         * Documentation/topdocs/NEWS.tely: clarify.
8154
8155 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8156
8157         * lily/tie.cc: remove minimum-length
8158
8159         * scm/define-grob-properties.scm (all-user-grob-properties):
8160         remove staffline-clearance, y-offset 
8161
8162         * input/regression/tie-dots.ly (Module): remove.
8163
8164         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8165         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8166
8167         * input/regression/tie-single.ly: new file.
8168
8169 2005-08-21  Graham Percival  <gpermus@gmail.com>
8170
8171         * ly/bagpipe.ly: fix compile problem.
8172
8173 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8174
8175         * lily/midi-item.cc (name): new method.
8176
8177         * lily/staff-performer.cc (acknowledge_audio_element): use
8178         signature of baseclass.
8179
8180         * lily/engraver-group.cc (do_announces): move recursion call out
8181         of while loop. 
8182
8183         * lily/drum-note-performer.cc (class Drum_note_performer): use
8184         process_music everywhere.
8185
8186         * ly/performer-init.ly: add default children everywhere.
8187
8188         * lily/paper-book.cc (output): call paper-book-write-midis
8189         directly: always write MIDI, even if no \layout {} block. 
8190
8191 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8192
8193         * VERSION (PACKAGE_NAME): release 2.7.6
8194
8195         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8196         about not being able to handle repeat.
8197
8198 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8199
8200         * Documentation/user/examples.itely (Piano templates):
8201         * lily/include/performer-group.hh: Remove last traces of
8202         Performer_group_performer.  Fixes make web.
8203
8204 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8205
8206         * Documentation/user/examples.itely (Piano templates): change
8207         Engraver_group_engraver -> Engraver_group
8208
8209         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8210         scm_stand_in_procs is not weak_any.
8211
8212         * lily/volta-bracket.cc (print): don't use strcmp().
8213
8214         * lily/volta-engraver.cc (process_music): use
8215         Text_interface::is_markup() for setting the 'text property of the
8216         volta bracket.
8217
8218         * input/mutopia/claop.py (accents): update syntax to 2.6
8219
8220         * scm/define-context-properties.scm
8221         (all-user-translation-properties): add countPercentRepeats.
8222
8223         * Documentation/user/basic-notation.itely (Measure repeats): add
8224         isolated percent example.
8225
8226 2005-08-18  Graham Percival  <gpermus@gmail.com>
8227
8228         * input/ {various}: change direction #1, #-1 to
8229         #up/#down or \fooUp, \fooDown.
8230
8231         * Documentation/user/music-glossary.tely: #-1 to #down.
8232
8233         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8234         to #up, #-1 to #down.
8235
8236 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8237
8238         * lily/include/engraver-group.hh: rename.
8239
8240         * lily/include/performer-group.hh: rename.
8241
8242 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8243
8244         * input/test/script-abbreviations.ly: Removed some old LaTeX
8245         left overs.
8246
8247 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8248
8249         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8250         Remove functions.  Remove if 1: constructs, reindent.
8251
8252         * scripts/convert-ly.py (add_version): Add functions from
8253         convertrules.py
8254
8255         * scm/script.scm (default-script-alist):
8256         s/priority/script-priority.  Fixes script stacking.  Backportme.
8257         (Fermata): Very low priority.
8258
8259 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8260
8261         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8262
8263         * input/regression/slur-script.ly: remove padding tweaks. Add
8264         comment strings.
8265
8266         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8267         time sigs and related stuff.
8268
8269         * scm/define-grob-properties.scm (all-user-grob-properties): add
8270         @code{} tags to property description.
8271
8272         * lily/include/line-group-group-engraver.hh (Module): remove file.
8273
8274         * python/convertrules.py (conv): add rule for
8275         Engraver_group_engraver -> Engraver_group.
8276
8277         * lily/include/performer-group-performer.hh: analogous.
8278
8279         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8280
8281         * lily/context-def.cc (instantiate): check for
8282         Engraver_group_engraver and Performer_group_performer not
8283         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8284  
8285 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8286
8287         * input/les-nereides.ly: Remove three fingering tweaks, update
8288         remaining one.
8289
8290         * input/regression/slur-script-inside.ly: Update, fix doc.
8291
8292         * scm/script.scm: Update to avoid-slur.
8293
8294         * scm/define-grob-properties.scm (avoid-slur): New property.
8295
8296         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8297         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8298         outside_slur_callback if avoid-slur != #'inside.
8299
8300         * scm/define-grobs.scm (Fingering, Textscript): No
8301         inside-slur/outside-slur preference.
8302         (DynamicLineSpanner): Always outside slur.
8303
8304         * input/regression/slur-script.ly: More tests.
8305
8306 2005-08-17  Graham Percival  <gpermus@gmail.com>
8307
8308         * Documentation/user/lilypond-book: fix notime entry.
8309
8310         * Documentation/user/advanced-notation.itely: add info on
8311         getting an I rehearsal mark.
8312
8313         * Documentation/user/putting.itely: reinstate "I", re-enforce
8314         the fact that \override numbers are the result of
8315         experimentation and personal taste.
8316
8317         * Documentation/user/invoking.itely: update convert-ly bugs.
8318
8319 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8320
8321         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8322         to #t.
8323
8324         * lily/timing-translator.cc (initialize): don't initialize timing.
8325
8326         * input/regression/stem-spacing.ly (Module): remove file.
8327
8328         * input/regression/spacing-stick-out.ly: specify Score context for
8329         \override
8330
8331         * input/regression/clefs.ly: remove spurious {}s 
8332
8333 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8334
8335         * Documentation/topdocs/NEWS.tely,
8336         input/regression/repeat-percent-count.ly: clarify a bit.
8337
8338 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8339
8340         * input/no-notation/display-lily-tests.ly: delete
8341         display-lily-init call.
8342
8343         * ly/music-functions-init.ly (displayLilyMusic): move
8344         display-lily-init call at top level, so that the user should not
8345         have to call it.
8346
8347         * scm/define-music-display-methods.scm (note-name->lily-string):
8348         retrieve note names directly from pitchnames using new function `rassoc'.
8349         (display-lily-init): note names list construction removed.
8350
8351 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8352
8353         * THANKS: spello.
8354
8355         * lily/lily-parser.cc (get_header): copy module, instead of
8356         returning it.
8357
8358         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8359         counters.
8360
8361         * Documentation/user/basic-notation.itely (Measure repeats): add
8362         links to Counter grobs.
8363
8364         * scm/define-grobs.scm (all-grob-descriptions): add
8365         DoublePercentRepeatCounter
8366         (all-grob-descriptions): add PercentRepeatCounter
8367
8368         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8369         also create counter grobs.
8370
8371         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8372         return grob without space-alist.
8373
8374         * input/proportional.ly: tune staff-padding.
8375
8376         * input/regression/repeat-percent-count.ly: new file. 
8377
8378 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8379
8380         * input/no-notation/display-lily-tests.ly: moved from
8381         input/regression/ to input/no-notation. Be sure to call
8382         `display-lily-init' before trying to use the display function.
8383
8384 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8385
8386         * scripts/lilypond-book.py (option_definitions): Don't localize
8387         the empty string. Fixes bug when --psfonts was used with
8388         non-English locale.
8389
8390 2005-08-15  Graham Percival  <gpermus@gmail.com>
8391
8392         * lily/tuplet-bracket.cc: simple build fix.
8393
8394         * Documentation/user/putting.itely: use "we" instead of "I".
8395
8396         * Documentation/user/basic-notation.itely: cautionary accidentals
8397         work with naturals, too.
8398
8399 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8400
8401         * lily/tuplet-bracket.cc (calc_position_and_height): add
8402         staff-padding support.
8403
8404         * input/proportional.ly: set staff-padding.
8405         
8406         * VERSION (PATCH_LEVEL): release 2.7.5
8407
8408         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8409         fixes. Remove tweaks.
8410
8411         * input/regression/tuplet-slope.ly: add a test case.
8412
8413         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8414         erroneous fix. Add spanner bounds to offset array with relative X
8415         positions.
8416
8417         * ly/engraver-init.ly: add Rest_engraver only once.
8418
8419         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8420         (*parser*) lookup if (*parser*) != #f.
8421
8422 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8423
8424         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8425         Cut-and paste update.
8426
8427         * input/regression/slur-script.ly: Add example of reverting
8428         inside-slur for fingering.
8429
8430         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8431         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8432
8433         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8434         outside_slur_callback if inside-slur == #f (as opposed to unset).
8435
8436 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8437
8438         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8439         encoding files are already removed.
8440
8441 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8442
8443         * Documentation/user/advanced-notation.itely (Instrument names):
8444         Document a workaround for instrument names that collide with
8445         system start braces/brackets.
8446
8447 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8448
8449         * lily/rest-collision.cc (do_shift): spello.
8450
8451         * input/proportional.ly: use #'used property. Set break-overshoot
8452         property.
8453
8454         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8455
8456         * lily/paper-column.cc: add #'used property
8457
8458         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8459         array for staves found.
8460
8461         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8462         array for stavesFound.
8463
8464         * lily/staff-spacing.cc (next_note_correction): add fixed and
8465         space to calling convention. This fixes spacing of accidentals
8466         after barlines.
8467
8468         * input/regression/spacing-accidental-stretch.ly: add barline -
8469         accidental case.
8470
8471         * scm/framework-ps.scm (page-header): add version number to
8472         creator
8473         (eps-header): idem.
8474
8475         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8476         
8477 2005-08-13  Graham Percival  <gpermus@gmail.com>
8478
8479         * Documentation/user/global.itely: add "fit as much as
8480         possible onto this page" example (Vertical spacing).
8481
8482 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8483
8484         * *: Nitpick run.
8485
8486         * buildscripts/fixcc.py: Fixes.
8487
8488 2005-08-12  Graham Percival  <gpermus@gmail.com>
8489
8490         * Documentation/user/advanced-notation.itely: add markup
8491         example to Text spanners.
8492
8493 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8494
8495         * Documentation/user/basic-notation.itely (Ties): Add example of
8496         tying a tremolo to a chord. Thanks to Steve Doonan. 
8497
8498         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8499         properties and move tieMelismaBusy to the list of written
8500         properties. 
8501
8502 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8503
8504         * po/TODO: suggest to use a dedicated tool like kbabel.
8505
8506         * po/fi.po: update using kbabel.
8507
8508 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8509
8510         * *: Remove obsolete files.  Nitpick run.
8511
8512         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8513
8514 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8515
8516         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8517         too.
8518
8519         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8520
8521         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8522         whitespace as symbol separator.
8523
8524         * lily/side-position-interface.cc: Add slur-padding.
8525
8526         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8527         quite a large fix, and it never worked in a stable release; so not
8528         really a regression.
8529
8530         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8531         Update cut and paste code from Slur_engraver.
8532
8533         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8534         Add.
8535
8536         * scm/define-grobs.scm (DynamicLineSpanner): Add
8537         dynamic-line-spanner-interface.
8538         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8539
8540 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8541
8542         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8543         to_boolean () so that non-set 'inside-slur means false.
8544
8545         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8546         slur has control-points.  Skip script without direction.  Always
8547         do_shift if script inside slur, even if slur not contained in
8548         script y-extent.  Increment k in loop.
8549
8550 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8551
8552         * scm/define-markup-commands.scm: Improved regexp to search for
8553         EPS bounding boxes and corrected call to ly:warning.
8554
8555 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8556
8557         * Documentation/user/programming-interface.itely (Displaying music
8558         expressions): doc for \displayLilyMusic. Also some precisions in
8559         "Markup construction in Scheme"
8560
8561 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8562
8563         * scm/define-markup-commands.scm (normal-text): Added 2 new
8564         markup commands, \normal-text and \medium (the latter thanks to
8565         Bruce Fairchild). 
8566
8567 2005-08-08  Graham Percival  <gpermus@gmail.com>
8568
8569         * Documentation/user/programming-interface.itely: fix @{ @}.
8570
8571         * scm/define-markup-commands.scm: add linewidth info to
8572         \justify and \wordwrap, add "upright is the opposite of italic".
8573
8574         * Documentation/user/advanced-notation.itely: shaped->shape,
8575         add (cons (markup "foo")) type of example to text markup,
8576         reword multi-measure rests section.
8577
8578         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8579         comment.  No actual code was touched.
8580
8581         * Documentation/user/invoking.itely: add more info about
8582         \include.  Thanks, Bruce!
8583
8584         * THANKS: add Bruce Fairchild, alphabetise.
8585
8586         * Documentation/user/global.itely: document \score{\header{}}
8587         behavior.
8588
8589         * Documentation/user/basic-notation.itely: reword multi-measure
8590         rest discussion in Rests.
8591
8592 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8593
8594         * Documentation/user/programming-interface.itely (Markup
8595         construction in Scheme): Corrected example and tried to clarify
8596         the implicit \line in the table.
8597
8598 2005-08-07  Graham Percival  <gpermus@gmail.com>
8599
8600         * Documentation/user/instrument-notation.itely: moved
8601         some bagpipe info back into the bagpipe section.  Somehow
8602         it ended up in the "other vocal issues" section?!  :o_O
8603
8604 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8605
8606         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8607         directories, not paths).
8608
8609 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8610
8611         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8612         plain emmentaler/aybabtu.  Backportme.
8613
8614         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8615         missing dir correction.
8616
8617 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8618
8619         * scm/define-markup-commands: fix reversed justify/wordwrap
8620         doc strings.
8621
8622 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8623
8624         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8625         lily/gregorian-ligature-engaver.cc,
8626         lily/include/ligature-engraver.hh,
8627         lily/include/coherent-ligature-engraver.hh,
8628         lily/include/gregorian-ligature-engraver.hh: make these classes
8629         truely abstract.  This should fix some internal oddities such as
8630         duplicate as well as dead translator/property declarations, and
8631         also some dead code.
8632
8633         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8634         bugfix: avoid message "junking empty ligature" on ligature
8635         brackets by collecting dummy grobs.
8636
8637 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8638
8639         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8640
8641         * input/proportional.ly (staffKind): bugfix.
8642         (staffKind): updates by Trevor Baca.
8643
8644         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8645         default layout. 
8646
8647         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8648         pair.
8649
8650         * lily/beam.cc (rest_collision_callback): call position_beam() if
8651         necessary.
8652
8653         * VERSION: release 2.7.4
8654
8655         * input/regression/spacing-uniform-stretching.ly: new file.
8656
8657         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8658
8659         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8660         contributor.
8661
8662         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8663
8664         * input/proportional.ly: new file.
8665
8666         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8667         columns is empty
8668
8669         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8670         bounds to currentCommandColumn for the last step.
8671         (start_translation_timestep): if tupletFullLength is set, set
8672         bound to Paper Column
8673
8674         * input/regression/tuplet-full-length.ly (indent): new file.
8675
8676         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8677         clique of loose columns, eg. a set of grace notes in strict
8678         notespacing.
8679
8680         * input/regression/spacing-strict-spacing-grace.ly: new file.
8681
8682         * lily/key-signature-interface.cc: change property name to
8683         alteration-alist
8684
8685         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8686         keyAccidentalOrder
8687
8688         * python/convertrules.py (conv): keyAccidentalOrder ->
8689         keyAlterationOrder
8690
8691         * lily/key-engraver.cc (create_key): always print a cancellation
8692         for going to C-major/A-minor, regardless of printKeyCancellation.
8693         (create_key): remove typecheck for visibility. This fixes key
8694         signature not being printed.
8695
8696         * lily/spacing-determine-loose-columns.cc: new file.
8697
8698         * input/regression/spacing-strict-notespacing.ly: new file.
8699
8700         * lily/spacing-spanner.cc (generate_springs): rename from
8701         do_measure. 
8702         (generate_pair_spacing): new function.
8703         (init, generate_pair_spacing): set between-cols for floating
8704         nonmusical columns.
8705
8706         * lily/spaceable-grob.cc (get_spring): new function. 
8707
8708         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8709         relative to the right edge of the prefatory matter.
8710
8711         * lily/beam.cc (print): read break-overshoot to determine where to
8712         stop/start broken beams.
8713
8714         * input/regression/spanner-break-overshoot.ly: new file.
8715
8716 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8717
8718         * ly/bagpipe.ly: updated.
8719
8720         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8721
8722 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8723
8724         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8725         support: now (de)crescs avoid slurs as well.
8726
8727         * Documentation/user/instrument-notation.itely (Bagpipe example):
8728         comment out non-functioning bagpipe example.
8729         (Bagpipe definitions): idem.
8730
8731         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8732         (Top): add proportionalNotationDuration example.
8733
8734         * input/regression/spacing-proportional.ly: new file.
8735
8736         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8737         synched to a beam.
8738
8739         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8740         fixes beams with a single stem (eg. beams across linebreaks.)
8741
8742         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8743
8744         * flower/rational.cc (operator +): prevent overflow. This fixes
8745         heavily nested tuplets.
8746
8747         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8748         have to protect even those unlikely to be corrupted data members.  
8749
8750 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8751
8752         * ly/bagpipe.ly: new file.
8753
8754         * THANKS: added Sven Axelsson.
8755
8756 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8757
8758         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8759         copy proportionalNotationDuration into currentMusicalColumn if
8760         set.
8761
8762         * lily/spacing-spanner.cc (musical_column_spacing): if
8763         uniform-stretching set, fixed space is 0.0
8764
8765         * input/regression/spacing-multi-tuplet.ly: show
8766         uniform-stretching property.
8767
8768         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8769
8770         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8771         (struct Spacing_options): new struct.
8772
8773         * lily/spacing-basic.cc: new file.
8774
8775         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8776         delta_t doesn't have to be smaller than shortest_playing_len
8777
8778 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8779
8780         * input/regression/markup-arrows.ly:  new file.
8781
8782         * lily/tuplet-bracket.cc: document new behavior.
8783
8784         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8785         with line breaks.
8786
8787         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8788
8789         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8790         default 
8791
8792         * lily/tuplet-bracket.cc: add edge-text property.
8793         add break-overshoot.
8794         (print): read break-overshoot.
8795         (print): read edge-text, add stencils.
8796
8797         * mf/feta-arrow.mf: new file.
8798
8799         * mf/feta-generic.mf: add feta-arrow.
8800
8801 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8802
8803         * Documentation/user/lilypond-book.itely (An example of a
8804         musicological document): Added flag -o to dvips for people who use
8805         the default setting in teTeX where output is sent to the printer. 
8806
8807         * Documentation/user/global.itely (Vertical spacing): Added
8808         reference to the Axis_group_engraver which documents the *Extent
8809         properties.
8810
8811 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8812
8813         * Documentation/user/basic-notation.itely (Tuplets): add note
8814         about nested tuplets. Remove BUG. 
8815
8816         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8817
8818         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8819         (print): manually call print() for subtuplets.
8820         (calc_position_and_height): add subtuplets to the
8821         support. Vertically shift outer tuplet 
8822
8823         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8824         remove-first for Lyrics, ChordNames and FiguredBass
8825
8826         * scm/define-grob-properties.scm (all-internal-grob-properties):
8827         use ly:grob-array? iso. grob-list?
8828         (all-internal-grob-properties): add tuplets grob-array.
8829
8830         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8831         new function
8832
8833 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8834
8835         * input/test/time-signature-staff.ly: new file.
8836
8837         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8838         spurious #<Music FingerEvent> errors. Backportme.
8839
8840 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8841
8842         * Documentation/user/programming-interface.itely (Markup
8843         construction in Scheme): Corrected markup syntax in the
8844         translation table.
8845
8846 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8847
8848         * Documentation/user/instrument-notation.itely: small update
8849         to bagpipe notation docs; thanks Sven!
8850
8851         * Documentation/user/basic-notation.itely: add link about trills.
8852
8853 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8854
8855         * Documentation/user/music-glossary: remove accidentally committed
8856         fink patch.
8857
8858 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8859
8860         * lily/lily-parser.cc (get_header): new function. Enable multiple
8861         \header definitions.
8862
8863         * lily/parser.yy (lilypond_header_body): use get_header.
8864
8865         * ly/init.ly:
8866         * scm/lily-library.scm (print-score-with-defaults): renamed
8867         $globalheader to $defaultheader
8868             
8869         * Documentation/user/global.itely (Creating titles): added short
8870         explanation that multiple headers are useable.
8871
8872
8873 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8874
8875         * lily/module-scheme.cc (LY_DEFINE): new file. 
8876
8877         * Documentation/user/advanced-notation.itely (Font selection): add
8878         doco for make-pango-font-tree.
8879
8880 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8881
8882         * Documentation/user/music-glossary: more languages
8883         for tenuto.
8884
8885         * Docuemntation/user/instrument-notation.itely: minor
8886         update for bagpipe example.
8887
8888 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8889
8890         * input/regression/+.ly (TODO): add some text.
8891
8892 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8893
8894         * Documentation/user/invoking.itely: \score begins with music.
8895
8896         * Documentation/user/ basic-notation.itely,
8897         instrument-notation.itely: minor changes.
8898
8899         * Documentation/user/music-glossary.itely: began tenuto entry.
8900
8901 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8902
8903         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8904
8905         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8906
8907 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8908
8909         * Documentation/user/examples.itely: remove bagpipe template.
8910
8911         * Documentation/user/instrument-notation.itely: add bagpipe
8912         section, maybe fix quotes in lyrics.  I hate text encoding.
8913         Clarify chord durations, more bagpipe stuff.
8914
8915 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8916  
8917         * lily/accidental-engraver.cc: formatting fixes.
8918
8919         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8920         grob-array.
8921
8922         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8923
8924         * lily/note-column.cc (arpeggio): new function.
8925
8926         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8927         account for spacing.
8928
8929 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8930
8931         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8932         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8933         mingw build.
8934         
8935 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8936
8937         * scm/lily.scm (lilypond-all): clear anonymous modules after
8938         processing files.
8939
8940 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8941
8942         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8943         SCM_I_CONSP
8944
8945         * VERSION: 2.7.3 released
8946
8947         * Documentation/user/invoking.itely (Invoking lilypond): add
8948         LILYPOND_GC_YIELD documentation.
8949
8950         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8951         scm_from_real / scm_make_real.
8952
8953         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8954         higher. This increases memory footprint, but provides overall
8955         speedup of 15 to 20%. 
8956
8957         * lily/include/translator.hh (class Translator): remove
8958         PRECOMPUTED_VIRTUAL everywhere.
8959
8960         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8961
8962         * lily/context.cc (now_mom): non-recursive now_mom() 
8963
8964         * lily/include/profile.hh: new file.
8965
8966         * lily/profile.cc: new file.
8967
8968         * lily/grob.cc (Grob::Grob): look properties up directly.
8969
8970         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8971         lookups.
8972
8973         * lily/include/box.hh (class Box): smob Box type.
8974
8975         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8976
8977         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8978         protect() and unprotect(). Use throughout.
8979
8980 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8981
8982         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8983
8984         * scm/define-music-display-methods.scm (markup->lily-string):
8985         markup elements can also be strings (without simple-markup
8986         appended)
8987
8988 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8989
8990         * lily/context.cc (where_defined): also assign value in
8991         where_defined().
8992
8993         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8994         (curve_coordinate): new function
8995
8996         * lily/simple-spacer.cc (add_columns): only add rods between
8997         column i and begin/end if keep-inside-line is set (this repleces
8998         allow-outside-line as default)
8999
9000 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9001
9002         * lily/tuplet-engraver.cc (start_translation_timestep): only read
9003         tupletSpannerDuration if applicable.
9004
9005         * lily/font-size-engraver.cc (process_music): read fontSize only
9006         once per timestep.
9007
9008         * lily/engraver*cc: use throughout.
9009         
9010         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
9011
9012         * lily/translator.cc (add_acknowledger): new file. Directly jump
9013         into an Engraver::acknowledge_xxx () method based on a grobs
9014         interface-list.
9015
9016         * lily/include/translator-dispatch-list.hh (class
9017         Engraver_dispatch_list): new struct, new file.
9018
9019         * scm/define-context-properties.scm
9020         (all-internal-translation-properties): remove acceptHashTable,
9021         acknowledgeHashTable
9022
9023         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
9024
9025         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
9026         change acknowledgeHashTable to C++ member. 
9027
9028         * lily/rest-collision.cc (do_shift): use extract_grob_set().
9029
9030 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9031
9032         * scm/display-lily.scm: new file. Define a `display-lily-music'
9033         function, that displays the music expression given as an argument,
9034         using LilyPond notation.
9035
9036         * scm/define-music-display-methods.scm: new file. Implementation
9037         of display methods for each music type.
9038
9039         * ly/music-functions-init.ly (displayLilyMusic): new function for
9040         displaying music with LilyPond notation.
9041
9042         * input/regression/display-lily-tests.ly: new regression test file
9043         for `display-lily-music'.
9044
9045         * scm/markup.scm: remove obsolete debugging code (for printing
9046         markups with LilyPond notation).
9047
9048         * scm/define-music-types.scm (music-name-to-property-table):
9049         * scm/clef.scm (supported-clefs): export, in order to be accessible
9050         from the (scm display-lily) module.
9051
9052 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9053
9054         * Documentation/topdocs/NEWS.tely (Top): Typo.
9055
9056 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
9057
9058         * Documentation/index.html.in, Documentation/texinfo.css,
9059           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9060           Documentation/bibliography/index.html.in,
9061           Documentation/bibliography/html-long.bst: revert css-width patch,
9062           it does not work with IE6.
9063
9064 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9065
9066         * Documentation/texinfo.css: revert 760px hack. 
9067
9068         * VERSION: release 2.7.2
9069
9070         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9071
9072         * Documentation/user/basic-notation.itely (Barnumber check): add
9073         section.
9074
9075         * scm/music-functions.scm (skip-to-last): new function. Show only
9076         last showLastLength part of the \score.
9077
9078         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9079
9080         * python/convertrules.py (conv): add ly:x-moment rule
9081
9082         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
9083
9084         * Documentation/topdocs/NEWS.tely (Top): add new feature.
9085
9086         * Documentation/user/instrument-notation.itely (Flexibility in
9087         alignment): options in subsections.
9088
9089         * lily/lyric-engraver.cc (process_music): don't typeset text for _
9090         syllable text. Instead, assume that the previous lyric text is a
9091         melismated text.
9092
9093         * Documentation/index.html.in: revert 800x600 change.
9094
9095 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9096
9097         * lily/main.cc (main): Remove invalid handle kludge.
9098
9099         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9100         (lambda): add gui define.
9101
9102 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9103
9104         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9105
9106         * Documentation/user/instrument-notation.itely (Musica ficta
9107         accidentals): add section Musica ficta accidentals
9108
9109         * lily/accidental-engraver.cc (make_suggested_accidental): new
9110         function.
9111         (make_standard_accidental): move into new function.
9112         (create_accidental): new function.
9113
9114         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9115         AccidentalSuggestion
9116
9117         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9118
9119         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9120         undefined.
9121
9122         * Documentation/user/global.itely (Page formatting): document
9123         horizontalshift.
9124
9125         * scm/page-layout.scm (default-page-music-height):
9126         horizontalshift: new variable, shift all systems by
9127         horizontalshift to the right, to make space for instrument names.
9128
9129         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9130
9131         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9132
9133 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9134
9135         * lily/note-column.cc (dir): idem.
9136
9137         * lily/spacing-spanner.cc (Module): idem.
9138
9139         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9140
9141         * lily/include/paper-column.hh (class Paper_column): add
9142         non-static get_rank() member.
9143
9144         * VERSION: release 2.7.1
9145         
9146         * scm/framework-null.scm: new file, used for benchmarking.
9147
9148 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9149
9150         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9151         version dependencies for fontforge and gs.
9152
9153         * Documentation/index.html.in, Documentation/texinfo.css,
9154         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9155         Documentation/bibliography/index.html.in, 
9156         Documentation/bibliography/html-long.bst: optimize width of
9157         html for a 800x600 screen (width:760), increases printability
9158         when 'fit to page' is not set and readability in wide screens.
9159
9160         * stepmake/bin/add-html-footer.py: add missing </p>.
9161
9162 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9163
9164         * scm/define-markup-commands.scm (beam): use polygon in beam
9165         command.
9166
9167         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9168         all acknowledged grobs, and do potentially expensive merge and
9169         write in one go.
9170
9171         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9172
9173         * configure.in (reloc_b): add --enable-static-gxx to statically
9174         link to libstdc++
9175
9176         * lily/GNUmakefile (static-gxx-libs): new target
9177         static-gxx-libs. Create symlink to libstdc++.a
9178
9179         * lily/new-lyric-combine-music-iterator.cc: rename to
9180         Lyric_combine_music_iterator
9181
9182         * lily/lyric-combine-music-iterator.cc
9183         (Old_lyric_combine_music_iterator): rename to
9184         Old_lyric_combine_music_iterator
9185
9186         * lily/*-engraver.cc (various): remove double use of
9187         PRECOMPUTED_VIRTUAL function: only use
9188         start_translation_timestep() and stop_translation_timestep(), not
9189         both.
9190
9191         * lily/break-substitution.cc (fast_substitute_grob_array): do
9192         fast_substitute_grob_array for all unordered grob_arrays.
9193         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9194         (substitute_grob_array): optimize.
9195
9196         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9197
9198         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9199
9200         * lily/parser.yy: revert $globalheader patch.
9201         
9202         * lily/include/translator.icc
9203         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9204         Translator methods, without _static helper.
9205  
9206         * lily/grob-smob.cc (derived_mark): rename from
9207         do_derived_mark(). Return void.
9208
9209         * scm/define-context-properties.scm
9210         (all-internal-translation-properties): remove tweakCount/tweakRank.
9211
9212         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9213         predefined break-visibilities.
9214
9215         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9216         booleans for break-visibility.
9217
9218         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9219
9220         * python/convertrules.py (conv): rule for Timing_translator. 
9221
9222         * lily/include/translator.icc: new file. 
9223
9224         * lily/paper-column-engraver.cc (process_music): new
9225         file. Separate Paper_column factory from Score_engraver.
9226
9227         * lily/vertically-spaced-context-engraver.cc: administer
9228         spaceable-staves property of System.
9229
9230         * lily/translator-group-ctors.cc: new file.
9231
9232         * lily/context-property.cc (make_grob_from_properties): construct
9233         the right Grob class programmatically, looking at the class entry
9234         for the meta property.
9235
9236         * lily/break-align-engraver.cc (stop_translation_timestep): call
9237         Break_align_interface::add_element() directly.
9238
9239         * lily/context.cc (measure_position): measure_position() is now a
9240         normal function.
9241
9242         * lily/include/translator.hh (class Translator): rename
9243         process_acknowledged_grobs() to process_acknowledged() and move to
9244         Translator.
9245
9246         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9247         field for each grob description.
9248
9249         * lily/include/translator-group.hh (class Translator_group):
9250         change to base class. Separate class from Translator. This gets
9251         rid of virtual inheritance for Engravers/Performers.
9252
9253         * lily/staff-performer.cc (class Staff_performer): derive
9254         Staff_performer from Performer, not Performer_group_performer 
9255
9256         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9257         new function.
9258         (precompute_method_bindings): new function. Precompute lists of
9259         Translators, so we only call methods (process_music,
9260         start_translation_timestep, etc.) for Translators needing
9261         it. Also: dispose of pointer-to-member-function calls.
9262
9263         * lily/engraver-group-engraver.cc: remove engraver_each,
9264         recurse_down_engravers ()
9265
9266         * lily/note-head.cc (internal_print): only call
9267         glyph-name-procedure if style != default. 
9268
9269 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9270
9271         * ly/titling-init.ly: add printallheaders option.
9272
9273         * Documentation/user/global.itely: document printallheaders.
9274
9275 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9276
9277         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9278         anymore, but do it centrally.  
9279
9280         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9281         hammer hack.
9282
9283         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9284
9285         * scm/output-lib.scm: remove hammer-print-function.
9286
9287         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9288         macro. Declare a Link_array<Grob> and fill it from a grob.
9289         (extract_item_set): idem for item.
9290
9291         * lily/break-substitution.cc: add header.
9292         (fast_substitute_grob_array): rewrite for Grob_arrays.
9293         (substitute_grob_array): idem.
9294
9295         * lily/group-interface.cc (add_thing): remove file.
9296
9297         * flower/include/parray.hh (class Link_array): slice() is const.
9298
9299         * lily/include/grob-array.hh: new file.
9300
9301         * lily/grob-array.cc (spanner): new file.
9302
9303         * lily/beam-quanting.cc (fill): read details property from beam.
9304
9305         * lily/beam.cc: support details property.
9306
9307         * total speedups below: approx 10%.
9308
9309         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9310
9311         * lily/include/grob.hh (class Grob): add interfaces_ member.
9312
9313         * lily/bezier.cc (init_polynomial_cache): new function: cache
9314         binom(3,j) t^j (1-t)^{3-j}
9315         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9316
9317         * lily/*.cc: substitution throughout.
9318
9319         * lily/grob-property.cc (internal_get_object): new routine.
9320         (internal_set_object): idem. Store grob refrences in separate
9321         alist. This saves processing time, since properties aren't
9322         break-substituted, and the per grob namespace is smaller, both for
9323         grobs and non-grob properties.
9324
9325         * scm/define-grob-properties.scm (all-internal-grob-properties):
9326         remove center-element.
9327
9328         * lily/grob.cc: remove tweak-count, tweak-rank.
9329
9330 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9331
9332         * Documentation/user/lilypond-book.itely: fixes example.
9333
9334 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9335
9336         * Documentation/user/global.itely (Creating titles):    
9337         * Documentation/user/examples.itely (All headers): change the
9338         place of \header in \score blocks (after music block) to make
9339         examples compile (cf. changes on parser.yy on 2005-07-10)
9340
9341 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9342
9343         * python/convertrules.py: add exc -> ecc rule.
9344
9345         * scripts/convert-ly.py: add location of convertrules.py
9346         in a comment.
9347
9348         * Documentation/user/changing-defaults.itely: fix language.
9349
9350 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9351
9352         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9353
9354 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9355
9356         * scm/output-socket.scm (grob-bbox): don't use inf? 
9357
9358         * flower/include/rational.hh: add operator bool() 
9359
9360         * scm/define-music-types.scm (music-descriptions): remove
9361         internal-class-name properties.
9362
9363         * lily/include/event.hh: remove file.
9364
9365         * lily/include/music-constructor.hh: remove file.
9366
9367         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9368         in 'types property.
9369
9370         * lily/music.cc (duration_length_callback): new function.
9371
9372         * lily/event.cc: remove file.
9373
9374         * lily/music-constructor.cc: remove file.
9375
9376         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9377
9378         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9379         (get_context_key): idem.
9380
9381         * scm/lily.scm (lambda): new option object-keys (default to #f)
9382
9383         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9384
9385         * scm/output-gnome.scm: remove beam routine.
9386
9387         * scm/output-ps.scm (scm): idem.
9388
9389         * scm/output-svg.scm: remove beam.
9390
9391         * ps/music-drawing-routines.ps: remove draw_beam.
9392
9393         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9394
9395         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9396         add scm_from_locale_string compatibility glue. 
9397
9398 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9399
9400         * scripts/lilypond-book.py: Prevent occuring error when
9401         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9402         times and target file shoud be overwritten.  (Error message said
9403         'input file and output file is same'.)
9404
9405 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9406
9407         * input/regression/slur-extreme.ly,
9408         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9409         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9410         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9411         "excentricity" to "eccentricity".
9412
9413         * Documentation/user/converters.itely: fix URL for Noteedit and
9414         Rosegarden.
9415
9416         * THANKS: added Yoshinobu Ishizaki.
9417
9418 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9419
9420         * scm/define-markup-commands.scm (justify-field): add. 
9421
9422         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9423
9424 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9425
9426         * lily/lookup.cc (filled_box): express filled_box with
9427         round_filled_box
9428
9429         * scm/midi.scm (paper-book-write-midis): new function. Write all
9430         performances in numbered MIDI files.
9431
9432         * lily/performance-scheme.cc (LY_DEFINE): new file.
9433         (LY_DEFINE): new function ly:performance-write.
9434
9435         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9436         new function.
9437         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9438
9439         * scm/framework-*.scm: use port arguments throughout.
9440
9441         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9442
9443         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9444
9445         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9446
9447         * scm/framework-texstr.scm (output-framework): 
9448
9449         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9450
9451         * scm/output-lib.scm (tablature-stem-attachment-function):
9452         tablature stem attachment fix. 
9453
9454 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9455
9456         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9457
9458         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9459
9460         * scm/define-music-types.scm (music-descriptions): don't use
9461         Music_wrapper type.
9462
9463         * lily/paper-column.cc (print): print moment too.
9464
9465         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9466         remove compatibility cruft.
9467
9468         * lily/parser.yy (score_body): \score can only begin with Music. 
9469
9470         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9471         make-score. Take music argument only. Move parser interaction to
9472         Scheme.
9473
9474         * scm/lily-library.scm (scorify-music): new function.
9475
9476         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9477         (datadir): remove resource import.
9478         (print_environment): remove get_bbox()
9479         (cp_to_dir): remove pre 1.5.2 compat glue.
9480
9481 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9482
9483         * lily/include/simple-spacer.hh (Module): idem.
9484
9485         * lily/include/spring.hh (struct Spring): store inverse
9486         strength. This prevents division by zero.
9487
9488         * VERSION: release 2.7.0
9489         
9490         * lily/include/music.hh (class Music): remove Music::duration_log()
9491
9492         * lily/stem-engraver.cc (make_stem): take duration log from event.
9493
9494         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9495
9496 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9497
9498         * scm/lily.scm (ly:load): load autochange.scm
9499
9500         * Documentation/user/tutorial.itely (Running LilyPond for the
9501         first time): remove reference to DVI/TeX
9502
9503         * scm/define-markup-commands.scm (text): add \text markup command.
9504
9505         * configure.in (reloc_b): bump requirement to Python 2.2.
9506
9507         * lily/include/dots.hh (class Dots): make has_interface() static.
9508
9509         * python/convertrules.py (conv): add rule for ly:grob-default-font
9510
9511         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9512         alphabetical order.
9513
9514         * input/regression/trill-spanner-pitched.ly: new file.
9515
9516         * lily/font-interface-scheme.cc (LY_DEFINE): function
9517         ly:grob-default-font (changed from get-default-font).
9518
9519         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9520
9521         * lily/note-head.cc (internal_print): if style is not a symbol,
9522         set style to 'default. 
9523         (internal_print): no style suffix if glyph-name-procedure not
9524         set. Default to quarter head.
9525
9526         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9527
9528         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9529
9530         * ly/music-functions-init.ly: \pitchedTrill
9531
9532         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9533
9534         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9535
9536         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9537
9538         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9539
9540         * po/fr.po: update
9541
9542         * po/de.po: update.
9543
9544 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9545
9546         * Documentation/user/changing-defaults.itely: add link
9547         to grob-iterface.
9548
9549         * Documentation/user/advanced-notation.itely: add material
9550         to Setting automatic beam behaviour.  Thanks, Joe!
9551
9552         * Documentation/user/lilypond.itely: change encoding to utf-8.
9553
9554 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9555
9556         * Documentation/user/advanced-notation.itely (Setting automatic
9557         beam behavior): Correct the documentation of
9558         revert-auto-beam-setting (backportme)
9559
9560 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9561
9562         * lily/ly-module.cc (ly_make_anonymous_module): define
9563         %module-public-interface of module. 
9564
9565         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9566         without lexer.
9567
9568 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9569
9570         * input/regression/fret-diagrams.ly: stretch example.
9571
9572 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9573
9574         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9575         Fodor).
9576
9577 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9578
9579         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9580
9581         * Documentation/user/examples.itely, lilypond-book.itely:
9582         change \RequirePackage to \usepackage.
9583
9584         * Documentation/user/global.itely: document copyright and tagline.
9585
9586 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9587
9588         * Documentation/user/basic-notation.itely (Transpose): remove link
9589         to nonexistent UntransposableMusic.
9590
9591         * scm/output-svg.scm: remove old definitions.
9592
9593         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9594         invoking.
9595
9596         * python/lilylib.py (search_exe_path): new function.
9597
9598 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9599
9600         * python/lilylib.py (mkdir_p): remove setup_environment()
9601         (backportme)
9602
9603         * buildscripts/mutopia-index.py (headertext): trim text.
9604
9605         * Documentation/topdocs/NEWS.tely (Top): refresh.
9606
9607         * scm/define-markup-commands.scm (wordwrap-string): new function:
9608         split string in paras and words.
9609         (wordwrap-markups): new function.
9610         (wordwrap-stencils): new function. 
9611         (justify): use it.
9612         (wordwrap): use it.
9613         (wordwrap-string): use it
9614         (justify-string): use it.
9615
9616         * scm/lily-library.scm (regexp-split): new function.
9617
9618         * scm/define-markup-commands.scm: remove encoded-simple. 
9619         remove font-markup.
9620         (fontsize): remove old version  of fontsize.
9621         (wordwrap): new markup function. Wrap into paragraphs.
9622
9623         * VERSION: Branch lilypond_2_6
9624         (MINOR_VERSION): go to 2.7.0
9625
9626 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9627
9628         * po/zh_TW.po: update from translation project.
9629
9630 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9631
9632         * scm/midi.scm: compile fix.
9633
9634 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9635
9636         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9637         patch. Now, the tempfile module is loaded too, not only used.
9638
9639 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9640
9641         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9642         0.05 - 1.00 to 0.25 - 1.00
9643
9644         * scm/midi.scm: moved the default-instrument-equalizer procedure
9645         to just under the insturment-equalizer-alist it takes as an
9646         argument.
9647
9648 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9649
9650         * Documentation/user/advanced-notation.itely (Font selection):
9651         remove CMR note.
9652
9653         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9654
9655 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9656
9657         * THANKS: Add UTF-8 marker.
9658
9659         * Documentation/user/point-and-click.itely (http): Update: use
9660         lilypond-invoke-editor.  Fix: instruct to use user.js.
9661
9662 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9663
9664         * ly/titling-init.ly: implements printpagenumber, increases
9665         space between dedication and title (to avoid collisions with
9666         "g" and "q" in dedication), and nicer logic about copyright
9667         and instrument fields being printed on the first page.
9668         Thanks Vincent!
9669
9670         * Documentation/user/global.itely: document printpagenumber.
9671
9672 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9673
9674         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9675
9676 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9677
9678         * THANKS: update to 2.6
9679
9680         * VERSION: 2.6.0 released.
9681
9682 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9683
9684         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9685         rule, errorneously removed probably because of misleading comment.
9686
9687 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9688
9689         * python/lilylib.py (datadir): py2exe comments.
9690
9691         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9692
9693         * configure.in (reloc_b): make fontconfig REQUIRED.
9694
9695 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9696
9697         * po/fi.po: add latest translations.
9698
9699 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9700
9701         * ChangeLog: recode utf-8
9702
9703         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9704         logo.
9705
9706         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9707
9708         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9709
9710         * python/convertrules.py (do_conversion): don't print program_name
9711         from within a module
9712
9713         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9714
9715         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9716
9717 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9718
9719         * Documentation/user/lilypond-book.itely,
9720         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9721
9722         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9723         fixes baseline-skip.  Thanks Vincent!
9724
9725         * Documentation/user/advanced-notation.itely, global.itely:
9726         moved "Selecting font sizes" to global, since it deals with
9727         notation font size, not text fonts.
9728
9729 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9730
9731         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9732         to fonts.
9733
9734 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9735
9736         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9737         workaround since /dev/stdin doesn't work on Cygwin. Using a
9738         temporary file in the current directory since latex doesn't
9739         understand the path name to the default TMP in Cygwin (at least on
9740         win XP).
9741         
9742         * Documentation/user/global.itely (Creating titles): Correct
9743         misprint in example. Thanks to Rob Vlasaty.
9744
9745 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9746
9747         * VERSION (PATCH_LEVEL): release 2.5.32
9748
9749         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9750         variable in lily module
9751
9752         * scm/framework-ps.scm (output-classic-framework): error message
9753         regarding the classic framework.
9754
9755         * Documentation/user/henle-flat-gray.png (Module): new file.
9756
9757         * Documentation/user/baer-flat-gray.png (Module): new file.
9758
9759         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9760         whiteout for markups.
9761
9762         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9763         regex too. This fixes change clef appearance in PDF. 
9764
9765         * ttftool/include/*: remove.
9766
9767         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9768
9769         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9770
9771         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9772
9773         * ttftool/*: remove ttftool subdirectory.
9774
9775         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9776
9777         * lily/ttf.cc (print_header): new file. Convert to type42, using
9778         FreeType to parse the TTF. 
9779
9780         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9781         and post table may differ. Pass around post_nglyphs as well.
9782
9783 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9784
9785         * ly/music-functions-init.ly (musicMap): new music function
9786         musicMap. 
9787         
9788 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9789
9790         * make/mutopia-rules.make: anti-alias-factor = 2
9791
9792         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9793         page switch.
9794
9795         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9796         anti-alias-factor for lilypond-book runs.
9797
9798         * scm/ps-to-png.scm (scale-down-image): new function.
9799         (my-system): new function.
9800         (make-ps-images): blow up GS resolution by anti-alias-factor,
9801         scale down image by anti-alias-factor.  This improves appearance
9802         of bitmaps
9803         (make-ps-images): remove showpage. Fixes spurious empty png at
9804         end.
9805
9806         * scm/framework-ps.scm (write-preamble): downcase filename before
9807         string-matching. Should fix .TTF files (as opposed to ttf files)  
9808
9809         * Documentation/user/tutorial.itely (Running LilyPond for the
9810         first time): separate subsections for windows, macos and unix.  
9811
9812         * Documentation/user/invoking.itely (Updating files with
9813         convert-ly): add MacOS X note.
9814
9815 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9816
9817         * Documentation/user/introduction.itely (Engraving): don't include
9818         file optical-spacing, add directly.
9819
9820         * lily/paper-outputter.cc (file): open file in binary mode. This
9821         fixes OTF embedding on windows.
9822
9823 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9824
9825         * scm/framework-ps.scm (write-preamble): remove debugging output.
9826
9827         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9828
9829         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9830         outdir.
9831         (install-fc-cache): install font cache in installation directories.
9832
9833 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9834
9835         * scm/editor.scm (editor-command-template-alist): Use char iso
9836         column, except for Emacs.
9837         (get-editor-command): Substitute char too (Bertalan Fodor).
9838
9839 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9840
9841         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9842         quoted ~s.  This should fix PNG output on Windows; single quotes
9843         are regular characters on Windows.
9844
9845 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9846
9847         * Documentation/user/basic-notation.itely: include ChoirStaff
9848         in System start delimiters.
9849
9850         * Documentation/user/putting.itely: new doc section on
9851         fixing overlapping notation.
9852
9853 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9854
9855         * Documentation/user/global.itely (Paper size): \paper is in
9856         \book, not \score.
9857
9858         * make/mutopia-rules.make: -ddelete-intermediate-files
9859
9860         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9861
9862 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9863
9864         * ChangeLog: Recode utf-8.
9865
9866         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9867         datadir with .py modules.
9868
9869 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9870
9871         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9872
9873 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9874
9875         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9876         
9877         * scm/framework-ps.scm (write-preamble): remove status check.
9878
9879         * Documentation/user/invoking.itely (Updating files with
9880         convert-ly): remove -o option.
9881
9882         * VERSION (PACKAGE_NAME): release 2.5.31
9883
9884         * scm/framework-ps.scm (write-preamble): use ly:system.
9885         (write-preamble): verbosity.
9886
9887         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9888
9889         * python/convertrules.py: new file. Store conversion rules
9890         separately.
9891
9892 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9893
9894         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9895
9896 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9897
9898         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9899         \musicDisplay 
9900
9901         * Documentation/user/instrument-notation.itely (More stanzas): Add
9902         reference to StanzaNumber.
9903
9904 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9905
9906         * THANKS: separate section for website translators.
9907
9908 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9909
9910         * Documentation/topdocs/INSTALL.texi: update vim info;
9911         thanks Simon Bailey!
9912
9913         * Documentation/user/advanced-notation.itely: included
9914         color names.
9915
9916         * Documentation/user/advanced-notation.itely,
9917         Documentation/usr/notation-appendices.itely: moved
9918         color names into an appendix.
9919
9920 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9921         
9922         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9923
9924         * scm/lily.scm (lambda): initialize program options from here.
9925
9926         * scm/framework-*.scm: add header info.
9927
9928         * lily/main.cc (parse_argv): only set output format to pdf if no
9929         other format specified.
9930
9931         * scm/backend-library.scm (postprocess-output): process
9932         'delete-intermediate-files after running convert-to-*. This fixes
9933         PNG generation when 'delete-intermediate-files is set.
9934         
9935 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9936
9937         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9938         links on website. 
9939
9940 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9941
9942         * Documentation/topdocs/INSTALL.texi,
9943         Documentation/user/lilypond-book.itely: typos.
9944
9945 2005-06-12  Pal Benko  <benkop@freestart.hu>
9946
9947         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9948         added between program name and switch; -b changed to -f not
9949         to generate pdf
9950
9951 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9952
9953         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9954         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9955
9956         * input/sakura-sakura.ly: add \midi.
9957
9958         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9959         iso. python find. 
9960
9961         * ttftool/test.c (main): cosmetics.
9962
9963         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9964
9965         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9966         create a ttf2ps binary.
9967
9968         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9969
9970         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9971         true.
9972
9973 2005-06-11  Graham Percival <gperlist@shaw.ca>
9974
9975         * Documentation/user/lilypond-book.itely: add warning about
9976         the font warnings in dvips.
9977
9978 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9979
9980         * THANKS: typo
9981
9982         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9983
9984         * GNUmakefile.in: remove links for .map, .enc
9985         don't fail if out/ doesn't exist yet.
9986
9987 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9988
9989         * ttftool/util.c (surely_read): return nbytes
9990
9991         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9992
9993         * VERSION (PACKAGE_NAME): release 2.5.30
9994
9995         * flower/string-convert.cc (precision_string): >? fix.
9996
9997         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9998         (make-ps-images): add verbose -q too.
9999
10000         * lily/default-actions.cc (Module): new file. default
10001         {book,score}-print functions.
10002
10003         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
10004         pass results via parseStringResult, lookup via ly:parser-lookup.  
10005
10006         * lily/lily-parser.cc (Lily_parser): only clone lexer in
10007         constructors.
10008         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
10009         (parse_string): idem.
10010
10011         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
10012
10013         * lily/main.cc (main_with_guile): copy be_verbose_global into
10014         ly_set_option()
10015
10016 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10017
10018         * scm/backend-library.scm (postscript->pdf):
10019         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
10020         verbose mode.  Search for several names of gs executable.
10021
10022 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10023
10024         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
10025         directly. This fixes a massive memory leak, provided you use CVS
10026         GUILE.
10027
10028 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
10029
10030         * ly/property-init.ly: Added tieDashed.
10031
10032         * THANKS: Added some bughunters for 2.5.
10033
10034 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10035
10036         * lily/program-option.cc: add debug-gc option.
10037
10038         * lily/include/lily-guile-macros.hh: don't protect exported module
10039         objects.
10040
10041         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
10042
10043         * scm/backend-library.scm (postscript->pdf): use
10044         delete-intermediate-files iso. running-from-gui? 
10045
10046         * ttftool/util.c (surely_read): robustness. Allow read() to return
10047         less bytes than requested, as per posix standards.
10048
10049         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
10050         program option.
10051
10052         * ttftool/include/ttftool.h ("C"): rename verbosity to
10053         ttf_verbosity. Add to public interface.
10054
10055         * scm/music-functions.scm (unfold-repeats): remove debugging display.
10056
10057         * lily/program-option.cc: rename from scm-option.cc
10058
10059         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
10060         (get_help_string): Print pretty help string.
10061
10062         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10063         to snippet preamble.
10064
10065         * lily/scm-option.cc: remove command-line-settings option. Fold
10066         all command-line options plus default settings in a generic
10067         interface. 
10068
10069         * flower/getopt-long.cc (table_string): indent 2nd lines of help
10070         texts too.
10071
10072 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10073
10074         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10075         or EXT_ components non-empty.
10076
10077 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10078
10079         * scm/lily.scm (running-from-gui?): Export.
10080
10081         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10082         output in .ly source directory.
10083
10084 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10085
10086         * ttftool/util.c (surely_lseek): more verbosity.
10087
10088         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10089         compile.
10090
10091         * lily/parser.yy (Repeated_music): remove >? 
10092
10093         * scm/backend-library.scm (postscript->pdf): Support for
10094         -dgs-font-load=1
10095
10096         * scm/framework-ps.scm (write-preamble): make font loading
10097         switchable to GS via --define-default gs-font-load=1
10098
10099 2005-06-09  Graham Percival  <gperlist@shaw.ca>
10100
10101         * Documentation/user/global.itely: added \layout docs.
10102
10103 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10104
10105         * lily/lily-parser-scheme.cc: add unistd.h
10106
10107 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10108
10109         * scm/editor.scm: add char argument.
10110
10111         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10112
10113         * ttftool/util.c (syserror): use errno for better error reporting.
10114
10115         * lily/source-file.cc (get_counts): new function. Calc column,
10116         line and char count in one go.
10117
10118         * lily/binary-source-file.cc (quote_input): rename to quote_input
10119
10120         * lily/input.cc (set): new function.
10121
10122 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10123
10124         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10125         directory part of file name to search directory.
10126
10127         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10128         search path and chdir to DIR if --outname=DIR used.
10129
10130         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10131         existence before appending original path.
10132
10133 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10134
10135         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10136         file" massage.
10137
10138         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10139         texinfo.tex is always used.
10140         
10141 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10142
10143         * flower/include/axis.hh: rename from axes.hh
10144
10145         * lily/include/text-interface.hh (Module): rename from text-item.hh
10146
10147         * VERSION (PATCH_LEVEL): release 2.5.29
10148
10149         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10150
10151         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10152         (handle-macfont): new function. Call fondu for Native mac fonts.
10153
10154         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10155         '() case.
10156
10157 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10158
10159         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10160         multi-page.  Fix .eps regular expression.
10161
10162 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10163
10164         * Documentation/user/putting.itely: add info on modifying templates.
10165
10166         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10167         misc small changes.
10168
10169 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10170
10171         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10172
10173         * scripts/lilypond-ps2png.scm
10174
10175         * VERSION (PACKAGE_NAME): release 2.5.28
10176
10177 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10178
10179         * lily/main.cc (prepend_env_path): Do not append /, that does not
10180         work.  Localedir lives in datadir, not in prefix.
10181
10182         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10183         hack for windows.
10184
10185         * flower/include/file-cookie.hh: Compile fix.
10186
10187 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10188
10189         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10190
10191         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10192         system primitives.
10193         (gulp-port): using read-string!/partial. We don't want to read an
10194         entire PS file  (GUILE 1.6 limits strings to 16M) 
10195
10196         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10197         properties. Add font-interface. 
10198
10199         * scm/define-grob-properties.scm (all-user-grob-properties):
10200         remove old bracket properties.
10201
10202         * scm/x11-color.scm: reformat. 
10203
10204         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10205         LedgerLineSpanner if new StaffSymbol is found. 
10206
10207         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10208         staff-symbol for finishing staff. 
10209
10210         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10211
10212         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10213         change black to currentColor everywhere. This fixes color support
10214         in SVG.
10215
10216 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10217
10218         * input/regression/fret-diagrams.ly: new file to test fret diagram
10219         capability
10220
10221         * scm/output-tex.scm: remove white-dot and white-text
10222
10223         * scm/output-ps.scm: remove white-dot and white-text
10224
10225         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10226         using ly:stencil-in-color instead
10227         (draw-dots) : remove call to white-dot
10228
10229 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10230
10231         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10232         support.
10233
10234         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10235
10236         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10237
10238         * flower/file-cookie.cc: new file. lily_cookie extension.
10239         
10240 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10241
10242         * scm/editor.scm (editor-command-template-alist): Add syn
10243         editor (Jaap [de Vos]).
10244
10245 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10246
10247         * scripts/lilypond-ps2png.scm:
10248         * scm/ps-to-png.scm: New file.
10249
10250         * scm/backend-library.scm (postscript->png): Use it.
10251
10252         * scripts/lilypond-ps-to-png.py: Remove file.
10253
10254         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10255
10256 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10257
10258         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10259
10260         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10261         start on grace moment. Fixes autobeam-grace.ly.
10262
10263         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10264         process anything unless we're at the end of a pending beam. Fixes
10265         syncopated 8ths beamed across a beat.
10266
10267 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10268
10269         * scm/editor.scm (editor-command-template-alist): Start emacs if
10270         emacslient fails.
10271
10272         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10273
10274         * flower/file-path.cc (is_file, is_dir): Export.
10275
10276         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10277
10278 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10279
10280         * lily/easy-notation.cc: Added include cctype to correct
10281         compilation error.
10282
10283 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10284
10285         * scm/backend-library.scm (postscript->pdf): set resolution to
10286         1200, so bitmap fonts aren't that ugly. 
10287
10288         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10289
10290         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10291         parent if we have a notehead. Fixes incorrect offsets when
10292         Paper_column is very wide in the X direction.
10293
10294         * input/regression/font-family-override.ly (Module): new file.
10295
10296         * scm/font.scm (make-pango-font-tree): new function.
10297
10298         * lily/beam.cc (before_line_breaking): remove warning about less
10299         than 2 visible stems. We still get a warning when there is only
10300         one stem.
10301
10302 2005-06-01  Werner Lemberg  <wl@gnu.org>
10303
10304         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10305         correctly.
10306
10307 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10308
10309         * lily/slur-scoring.cc (generate_avoid_offsets): new
10310         function. Generate avoid offsets once per slur.
10311
10312         * lily/slur.cc (add_extra_encompass): add dependency to
10313         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10314
10315         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10316         too. Fixes inf error with added bass notes.
10317
10318         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10319         argument anymore.
10320
10321         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10322
10323         * input/tutorial/lbook-latex-test.tex: add line length test.
10324
10325         * scripts/lilypond-book.py (set_default_options): new
10326         function. Call this before dissecting snippets, so linewidth
10327         settings reach the snippets.
10328
10329 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10330
10331         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10332
10333 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10334
10335         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10336
10337 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10338
10339         * stepmake/aclocal.m4: More autopackage friendliness.
10340
10341 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10342
10343         * Documentation/index.html.in: remove link to LSR.
10344
10345         * Documentation/user/global.itely: remove duplicate
10346         "dedication" \header{} section.
10347
10348 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10349
10350         * VERSION (PACKAGE_NAME): release 2.5.27.
10351
10352         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10353         too. Plugs memory leak.
10354
10355         * make/lilypond.fedora.spec.in (Group): remove
10356         lilypond-pdfpc-helper.
10357
10358         * scripts/GNUmakefile (SEXECUTABLES): remove
10359         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10360
10361         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10362         'typewriter family.
10363
10364         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10365         memory leak.
10366
10367         * lily/parser.yy (score_body): don't clone Score, that's done in
10368         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10369
10370         * lily/score-engraver.cc (derived_mark): new function.
10371         (initialize): unprotect Paper_score. This fixes a memory leak.
10372
10373         * lily/score-performer.cc (derived_mark): new function.
10374
10375         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10376
10377         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10378         spurious warning.
10379
10380         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10381         serif.
10382
10383 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10384
10385         * configure.in (reloc_b): Add --enable-relocation.
10386
10387 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10388
10389         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10390
10391         * input/regression/alignment-order.ly: add Staff example.
10392
10393 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10394
10395         * po/fr.po: update.
10396
10397 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10398
10399         * Documentation/index.html.in: add link to LSR.
10400
10401 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10402
10403         * scm/define-stencil-commands.scm (Module): new file. Register all
10404         allowed stencil expression heads in a central place.
10405
10406         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10407         ly:make-stencil
10408
10409         * lily/stencil-expression.cc (all_stencil_heads): registering
10410         stencil expressions.
10411
10412         * lily/stencil-interpret.cc: new file. Stencil expression
10413         interpreting.
10414
10415         * input/xiao-haizi-guai-guai.ly: move file back.
10416
10417 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10418
10419         * Documentation/user/advanced.itely, converters.itely,
10420         instrument-notation.itely, lilypond-book.itely: misc small
10421         changes.
10422
10423 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10424
10425         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10426
10427         * make/lilypond.fedora.spec.in: Fix source url.
10428
10429         * cygwin: Update from mingw patches.
10430
10431         * scm/editor.scm (editor-command-template-alist): Use jedit
10432         -reuseview (Bertalan), add uedit (Patrick Huberts).
10433
10434         * input/xiao-hai-zi-guai-guai.ly: Rename from
10435         xiao-haizi-guai-guai.ly.
10436
10437         * input/*: Reindent, do not use TAB.
10438
10439         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10440         white background.
10441
10442 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10443
10444         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10445         numerical overflow error.
10446
10447 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10448         
10449         * abc2ly.py: fix to syntax error in multi-part output.
10450
10451 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10452
10453         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10454         with disappearing span bars when alignAboveContext is active
10455
10456         * lily/property-iterator.cc (check_grob): use is-grob?
10457         object-property. Fixes crash-key-sig-font-size.ly. 
10458
10459 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10460
10461         * lily/bar-line.cc (print): don't round barlines; this produces
10462         odd aliasing effects in Acroread.
10463
10464         * lily/timing-engraver.cc (process_music): robustness fix.
10465
10466         * lily/context-def.cc (filter_engravers): bugfix.
10467
10468 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10469
10470         * lily/lilypond.rc.in: Add ly-icon.
10471
10472         * lily/GNUmakefile: 
10473         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10474         rules.
10475
10476 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10477
10478         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10479
10480         * ps/music-drawing-routines.ps: 
10481
10482         * scm/output-ps.scm: remove draw ez_ball.
10483
10484         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10485         EasyNotation context definition.
10486
10487         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10488         Text_interface and color for making easy note heads.
10489
10490         * lily/stencil.cc (with_color): new function.
10491
10492         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10493
10494         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10495         output routine. Zigzag now works in SVG too.
10496
10497         * scm/output-tex.scm (filledbox): idem.
10498
10499         * scm/output-svg.scm (filledbox): idem.
10500
10501         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10502
10503         * lily/lookup.cc (horizontal_line): use draw-line. 
10504
10505         * lily/system-start-delimiter.cc: remove old staff bracket code.
10506
10507         * mf/feta-haak.mf: further tweaks.
10508
10509         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10510
10511         * mf/feta-generic.mf: include feta-haak.
10512
10513         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10514
10515         * scm/framework-ps.scm (write-preamble): only load fonts if their
10516         filename is a string. 
10517
10518 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10519
10520         * scm/output-svg.scm (circle): support circle.
10521         (bracket): stub for bracket.
10522
10523         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10524         correct.
10525
10526 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10527
10528         * Documentation/user/lilypond.tely, advanced-notation.itely,
10529         basic-notation.itely, instrument-notation.itely, global.itely,
10530         introduction.itely, tutorial.itely: rearranging, editing,
10531         clean-up.
10532
10533         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10534         for compiling on FreeBSD.
10535
10536 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10537
10538         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10539         otf files.
10540
10541         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10542         bugfixes.
10543
10544         * VERSION: 2.5.26 released.
10545
10546         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10547
10548 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10549
10550         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10551         if printpagenumber is false.
10552
10553 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10554
10555         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10556         cache warning.
10557
10558         * lily/tie.cc (print): support dotted ties.
10559         
10560 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10561
10562         * scm/define-grobs.scm (all-grob-descriptions): switch off
10563         debugging
10564         (all-grob-descriptions): Arpeggio has Y-extent.
10565
10566         * scm/define-music-properties.scm (all-music-properties): document
10567         length-callback and start-callback as "read-only".
10568
10569         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10570         length-callback after creation. 
10571
10572         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10573         compressmusic -> compressMusic.
10574
10575         * ly/music-functions-init.ly (oldaddlyrics): idem.
10576
10577         * lily/parser.yy: NewLyricCombineMusic ->
10578         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10579
10580 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10581
10582         * ly/Welcome_to_LilyPond.ly: typo.
10583
10584 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10585
10586         * Documentation/user/lilypond.tely: move changing-defaults to be
10587         before global issues.
10588
10589         * Documentation/user/basic-notation.itely: move Transpose section
10590         here from advanced/Other.
10591
10592         * Documentation/user/changing-defaults.itely,
10593         advanced-notation.itely: move Fonts to advanced, edit.
10594
10595 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10596
10597         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10598         # before negative integers.
10599
10600 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10601
10602         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10603
10604         * Documentation/user/lilypond.tely: change Unified index to
10605         LilyPond index.
10606
10607         * Documentation/user/advanced-notation.itely,
10608         instrument-notation.itely: editing.
10609
10610 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10611
10612         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10613
10614         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10615
10616 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10617
10618         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10619         ly:port-move.  Needs to be stderr-specific on mingw.
10620         Run fixcc.
10621
10622 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10623
10624         * lily/general-scheme.cc (ly:port-move): Remove.
10625
10626         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10627         windows.
10628
10629         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10630         variables.  This eliminates the need for a gs.bat wrapper, which
10631         opens a console.
10632
10633         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10634         * scm/lily.scm (running-from-gui?): 
10635         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10636         artifact of not compiling with -mwindows.
10637
10638         * scm/editor.scm: Define PLATFORM.
10639
10640 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10641
10642         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10643         can start to cut & paste lilypond-book fragments.  
10644
10645         * scm/define-music-types.scm (music-descriptions): remove
10646         UntransposableMusic
10647
10648 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10649
10650         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10651
10652 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10653
10654         * Documentation/user/instrument-notation.itely: remove *Engraver.
10655
10656         * Documentation/user/advanced-notation.itely: edit, rearrange.
10657
10658 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10659
10660         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10661         findresource iso. findfont for CID CFF fonts.
10662
10663         * VERSION (PACKAGE_NAME): release 2.5.25
10664
10665         * ly/Welcome_to_LilyPond.ly: add  \version
10666
10667 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10668
10669         * Documentation/user/programming-interface.itely: move
10670         \displayMusic into its own section.
10671
10672         * Documentation/user/basic-notation.itely: finish editing.
10673
10674 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10675
10676         * flower/file-path.cc (find): don't throw away file_name.dir, but
10677         append to it. Fixes \include with directories.
10678
10679         * flower/include/file-path.hh (class File_path): don't derive from
10680         Array<String>.
10681
10682         * flower/include/file-name.hh (class File_name): remove to_str0()
10683
10684         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10685         Hara_kiri_engraver in separate file.
10686
10687         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10688         translation went wrong. Fixes vertically translated slurs.
10689
10690 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10691
10692         * Documentation/user/basic-notaton.itely: editing.
10693
10694 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10695
10696         * Documentation/user/macros.itexi, basic-notation.itely:
10697         add @commonprop (commonly used properties) macro.
10698
10699 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10700
10701         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10702
10703         * scripts/lilypond-book.py (invokes_lilypond): new function
10704         (main): only run fontextract if invokes_lilypond() is true.
10705
10706         * lily/function-documentation.cc (ly_add_function_documentation):
10707         duh, use !=
10708
10709         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10710
10711         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10712
10713         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10714
10715         * lily/function-documentation.cc (ly_add_function_documentation):
10716         use scm_hash_table_p() for checking.
10717
10718 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10719
10720         * Documentation/user/advanced-notation.itely (Text scripts):
10721         Change nonexisting @internalsref{Text markup} to @ref{Text
10722         markup}.  Change @internalsref{Text script} to
10723         @internalsref{TextScript}.
10724
10725         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10726
10727 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10728
10729         * Documentation/user/tutorial.itely, basic-notation.itely,
10730         changing-defaults.itely: remove duplicate cindex entries
10731         that appear on the same page.
10732
10733         * scm/define-grobs.scm: change default padding for TextSpanner.
10734
10735         * Documentation/topdocs/AUTHORS.texi: update email address.
10736
10737         * Documentation/user/global.itely: add info about \include.
10738
10739 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10740
10741         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10742         when running-from-gui.
10743
10744         * scm/editor.scm (get-editor): Add platform defaults.
10745
10746         * scm/backend-library.scm (postscript->pdf): Typo.
10747
10748 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10749
10750         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10751
10752         * lily/font-config.cc (init_fontconfig): add warning about cache.
10753
10754 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10755
10756         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10757
10758 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10759
10760         * lily/horizontal-bracket.cc (print): Take care of the direction
10761         property so brackets above the stave point downwards. 
10762
10763         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10764         for HorizontalBracket so it doesn't end up within the stave.
10765
10766 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10767
10768         * lily/GNUmakefile (default): Typo.
10769
10770         * scm/lily.scm (PLATFORM): Export.
10771
10772         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10773         load-font-via-GS, ttftool or fopencookie is broken on windows.
10774         
10775         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10776         -dSAFER, that is broken on windows.
10777
10778 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10779
10780         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10781         for FlexLexer.h
10782
10783         * scripts/lilypond-invoke-editor.scm: remove stray -
10784
10785 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10786
10787         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10788         Fixes deprecation warning.
10789
10790         * flower/include/string.icc (to_string): Only inline if
10791         -DSTRING_UTILS_INLINED.
10792
10793         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10794         name.  Remove windows comment.
10795
10796         * scm/editor.scm (slashify): New function.
10797         (get-editor-command): Use it.
10798         (get-command-template): Do not alter editor command if
10799         environment value includes `%(file)s' magic.
10800
10801         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10802         (dissect-uri): Use it.
10803         (unquote-uri): Bugfix.
10804
10805 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10806
10807         * scm/framework-ps.scm (write-preamble): add TTF rule.
10808
10809         * Documentation/topdocs/README.texi (Top): remove note about
10810         xdelta.
10811
10812         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10813         requirement.
10814
10815         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10816         function. Figure out where FlexLexer.h lives
10817
10818         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10819         
10820 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10821
10822         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10823         with Windows root in file name.
10824
10825         * scm/backend-library.scm (ly:system): Only redirect output (using
10826         system and shell, ugh) if /dev/null is writable.
10827
10828         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10829         windows icon.
10830
10831         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10832         on Mingw.
10833
10834         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10835         click.
10836
10837         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10838         use result of stat when available.
10839
10840         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10841         absolute file name and root.
10842
10843         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10844
10845         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10846
10847         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10848         slashes in file name.
10849
10850 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10851
10852         * Documentation/user/preface.itely (Preface): Run
10853         texinfo-all-menus-update.
10854
10855         * scm/editor.scm (get-editor-command): Bugfix: allow full
10856         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10857
10858         * Documentation/pictures/lilypond-48.xpm: New file.
10859
10860         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10861
10862         * ly/Welcome_to_LilyPond.ly: New file.
10863
10864         * lily/main.cc (main): Only identify if we have a terminal.
10865
10866         * scm/backend-library.scm (postscript->png)
10867         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10868         non-/bin/sh).
10869
10870 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10871
10872         * Documentation/topdocs/AUTHORS.texi: polish, update.
10873
10874 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10875
10876         * Documentation/user/preface.itely (Notes for version 2.6): new
10877         notes for 2.6
10878
10879         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10880         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10881         is not fully contained" warnings.
10882
10883         * lily/slur-scoring.cc (get_bound_info): remove warning.
10884
10885         * lily/staff-symbol-engraver.cc (process_music): start initial
10886         spanner in process_music(). This fixes overrides of StaffSymbol
10887         properties.
10888
10889         * scm/framework-pdf.scm (Module): remove.
10890
10891         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10892
10893         * lily/ambitus-engraver.cc: formatting cleanups.
10894
10895         * mf/feta-solfa.mf (Module): remove.
10896
10897         * ChangeLog: more details about contributions.
10898
10899 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10900
10901         * lily/align-interface.cc (align_elements_to_extents): warn if
10902         called too early. Fixes: disappearing-staff-lines.ly
10903
10904         * VERSION (PACKAGE_NAME): release 2.5.24
10905
10906 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10907
10908         * stepmake/aclocal.m4: Typo.
10909
10910         * flower/string.cc (substitute): Take two strings or two
10911         characters.  Update callers.
10912
10913 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10914
10915         * flower/file-name.cc (File_name): Slashify.
10916
10917         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10918
10919         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10920
10921         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10922
10923         * configure.in (gui_b): Use it.
10924
10925         * lily/lilypond.rc.in: New file.
10926
10927         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10928
10929 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10930
10931         * Documentation/user/advanced-notation.itely: edit of Text
10932         section; clarify text scripts vs. text markup.
10933
10934 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10935
10936         * lily/multi-measure-rest-engraver.cc
10937         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10938         separation items on start. Fixes mm rests in start of score.
10939
10940         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10941         don't access StaffSymbol if not there.
10942         Fixes: crash-staff-symbol-engraver.ly.
10943
10944         * lily/instrument-name-engraver.cc (class
10945         Instrument_name_engraver): data member first_. Create
10946         InstrumentName on start. 
10947
10948 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10949
10950         * Documentation/user/instrument-notation.itely: add guitar
10951         position.
10952
10953         * Documentation/user/introduction.itely,
10954         Documentation/user/lilypond.tely,
10955         Documentation/user/tutorial.itely: begin pruning
10956         unused (duplicated) cindex entries and misc cleanup.
10957
10958 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10959
10960         * input/test/volta-chord-names.ly: Bring the explanation up to
10961         date.
10962
10963 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10964
10965         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10966         Specify `@documentencoding utf-8' for html, ignore warnings.
10967
10968 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10969
10970         * THANKS: Added bughunters.
10971
10972 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10973
10974         * lily/main.cc: update help string for `lilypond -H'.
10975
10976         * po/fi.po: update.
10977         
10978 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10979
10980         * Documentation/user/advanced-notation.itely: minor fixes.
10981
10982 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10983
10984         * scm/editor.scm: New module.
10985
10986         * scm/lily.scm (gui-main): Use it.
10987
10988         * scm/framework-gnome.scm (spawn-editor): Use it.
10989
10990         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10991
10992 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10993
10994         * scm/framework-ps.scm (load-font-via-GS):  new function.
10995
10996         * lily/pango-font.cc (pango_item_string_stencil): add support for
10997         CID keyed font.
10998
10999         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
11000
11001 2005-05-10  Graham Percival  <gperlist@shaw.ca>
11002
11003         * Documentation/user/basic-notation.itely: add @ref.
11004
11005         * Documentation/user/advanced-notation.itely: add example
11006         of 5/8 beaming.
11007
11008 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11009
11010         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
11011
11012         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
11013         going through ps2pdf wrappers.
11014
11015 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
11016
11017         * Documentation/user/instrument-notation.itely: petrucci note
11018         heads: updated docu
11019
11020         * input/regression/note-head-style.ly: updated regression test;
11021         indentation fixes
11022
11023         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
11024         heads as default
11025
11026         * mf/parmesan-heads.mf: minor editing; use musicological names
11027         (rather than optical description) as note head names
11028
11029         * scm/output-lib.scm: complete petrucci heads
11030
11031 2005-05-09  Pal Benko  <benkop@freestart.hu>
11032
11033         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
11034         heads, but bigger)
11035
11036 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11037
11038         * lily/main.cc (main_with_guile): Remove no files check.
11039
11040         * lily/main.cc (ly:usage): Export to Scheme.
11041
11042         * scm/lily.scm (no-files-handler): New function.
11043
11044         * scm/lily.scm (lilypond-main): Use it.
11045
11046         * configure.in (gui_b): Add mbrtowc checking.
11047         Resurrect [utf8/]wchar.h checking.
11048
11049 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11050
11051         * Documentation/user/advanced-notation.itely (Metronome marks):
11052         Add link to the program reference for MetronomeMark
11053
11054         * Documentation/user/lilypond-book.itely (An example of a
11055         musicological document): Correct the example using psfonts 
11056
11057 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
11058
11059         * po/fi.po: update after a lesson how to update entries against
11060         source.
11061         
11062         * po/TODO: document the lesson.
11063
11064 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11065
11066         * configure.in (gui_b): remove wcrtomb checking.
11067
11068         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11069         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11070
11071 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11072
11073         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
11074         keep Scheme expressions and strings unmodified when doing the
11075         conversion to postfix notation for slurs and beams. Should
11076         hopefully solve most related conversion problems. 
11077
11078         * Documentation/user/lilypond-book.itely : Clarify and correct how
11079         to call dvips with -h psfonts.
11080
11081 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11082
11083         * Documentation/user/instrument-notation.itely (Entering lyrics):
11084         Typo.  Fixes build.
11085
11086 2005-05-09  Graham Percival  <gperlist@shaw.ca>
11087
11088         * Documentation/user/lilypond-book.itely: document PSFONTS file.
11089
11090         * Documentation/user/lilypond.tely, lilypond-book.itely,
11091         tutorial.itely: change references to 2.5.x to 2.6.x.
11092
11093         * Documentation/user/instrument-notation.itely: clarified \addlyrics
11094         vs \lyricmode.
11095
11096         * Documentation/user/invoking.itely: remove old info about
11097         lilypond-profile.
11098
11099         * Documentation/topdocs/INSTALL.texi: remove old info about
11100         lilypond-profile, add warning about needing international fonts
11101         to build docs.
11102
11103 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11104
11105         * lily/include/grob-info.hh (class Grob_info): make data member
11106         private. Changes throughout.
11107
11108         * input/regression/alignment-order.ly: new file. 
11109
11110         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11111         alignAboveContext and alignBelowContext
11112
11113 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11114
11115         * lily/pfb.cc (LY_DEFINE): add cast.
11116
11117         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11118         matches .otf
11119         (write-preamble): warn about unknown fonts.
11120
11121         * lily/pfb.cc (Module): new function ly:otf->cff
11122
11123         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11124         (get_otf_table): new function.
11125
11126 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11127
11128         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11129         iso. ps2png.
11130
11131 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11132
11133         * po/fi.po: apply second round of update.
11134
11135 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11136
11137         * scm/x11-color.scm (make-x11-color-handler): don't use
11138         #\sp. Apparently doesn't work on all platforms. 
11139
11140 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11141
11142         * Documentation/user/advanced-notation.itely, putting.itely,
11143         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11144
11145 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11146
11147         * VERSION (PACKAGE_NAME): release 2.5.23
11148
11149 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11150
11151         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11152         convert to utf-8.
11153
11154         * THANKS: Add translators for this release, convert to utf-8.
11155
11156         * mf/GNUmakefile (MFTRACE_FLAGS):
11157         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11158         outdir as option (WAS: hardcoded).
11159
11160 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11161
11162         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11163         finished_span_
11164
11165         * THANKS: add Hans Forbrich.
11166
11167         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11168
11169         * Documentation/user/basic-notation.itely (Staff symbol): document
11170         start/stop staff. Reference to ossia.ly
11171
11172         * input/test/ossia.ly: new example using stop and startStaff.
11173
11174         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11175         in other words, don't create "|" barline at start of the score.
11176         (start_translation_timestep): don't set whichBar for start of score.
11177
11178         * input/regression/staff-halfway.ly: use new functionality.
11179
11180         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11181         start and stop staff based on events.
11182
11183         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11184
11185         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11186
11187 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11188
11189         * Documentation/user/programming-interface.itely (How markups work
11190         internally ): remove \encoding reference.
11191
11192 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11193
11194         * scripts/convert-ly.py: Attempt to do a smarter update of 
11195         text markups from versions < 1.9.0 with arbitrary nesting.
11196
11197 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11198
11199         * po/fi.po: convert to utf-8, and update.
11200
11201 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11202
11203         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11204
11205         * lily/*.cc: more <? >? to min/max changes
11206
11207         * lily/include/interpretation-context-handle.hh: rename
11208         Interpretation_context_handle to Context_handle.
11209
11210 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11211
11212         * input/regression/GNUmakefile (local_delete): use `find` together 
11213         with `xargs` to avoid too long argument-lists in cmd line.
11214
11215 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11216
11217         * Documentation/user/introduction.itely: updates "About this manual".
11218
11219         * Documentation/user/advanced-notation.itely,
11220         invoking.itely: minor fixes.
11221
11222 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11223
11224         * COPYING: add font exception. Update FSF address. 
11225
11226         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11227         should be taken without child context.
11228
11229         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11230
11231         * scm/define-markup-commands.scm (triangle): new command, as
11232         robust replacement for unicode Delta/Triangle.
11233
11234 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11235
11236         * ps/music-drawing-routines.ps: add fillp argument.
11237
11238         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11239
11240         * lily/font-config.cc (init_fontconfig): don't add cff/
11241
11242         * VERSION (PACKAGE_NAME): release 2.5.22
11243
11244         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11245
11246         * lily/grace-engraver.cc (consider_change_grace_settings): use
11247         is_alias(). Fixes problem with CueVoice grace notes. 
11248
11249         * lily/simultaneous-music-iterator.cc (construct_children): call
11250         Music_iterator::quit() for iterators that start out invalid. This
11251         fixes indefinitely continuing contexts.
11252
11253         * buildscripts/substitute-encoding.py: new file
11254
11255         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11256         missing @end 
11257
11258         * scripts/lilypond-book.py (write_if_updated): print file name.
11259
11260         * Documentation/user/basic-notation.itely (Explicitly
11261         instantiating voices): idem.
11262
11263         * Documentation/user/advanced-notation.itely (Text spanners):
11264         remove stray { } 
11265
11266         * lily/context.cc (default_child_context_name): the default child
11267         is now first in accepts_list_.
11268
11269         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11270         \defaultchild to all relevant contexts.  This fixes:
11271         drums-pitch.ly.
11272
11273         (Probably also fixes similar problems with ancient
11274         transcriptions getting CueVoices instead of the desired voices.)
11275  
11276         * lily/context-def.cc (get_default_child): new function.
11277         (get_accepted): place default child in front of list.
11278
11279         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11280
11281         * lily/include/context-def.hh (struct Context_def): add
11282         default_accept_
11283
11284 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11285
11286         * scm/define-grobs.scm: remove "remove-first" line, since
11287         the absent property is set to #f anyway.
11288
11289         * Documentation/user/basic-notation.itely,
11290         advanced-notation.itely, instrument-notation.itely: minor
11291         fixes.
11292
11293         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11294
11295         * Documentation/user/advanced-notation.itely,
11296         changing-defaults.itely: consolidate Text stuff in
11297         advanced notation.
11298
11299         * Documentation/user/global.itely: better docs for \header.
11300
11301         * Documentation/user/putting.itely: new chapter; placeholder
11302         for future expansion.
11303
11304         * Documentation/user/examples.itely: moved "suggestions for
11305         writing LP files" section into putting.itely.
11306
11307         * Documentation/user/lilypond.itely: added new chapter,
11308         fixed the short table of contents.
11309
11310 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11311
11312         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11313         infinity for unfeasible beams.
11314
11315         * make/lilypond.fedora.spec.in (Group): idem.
11316
11317         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11318
11319         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11320
11321         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11322         fonts directly.
11323
11324         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11325
11326         * mf/GNUmakefile: remove all CFF rules.
11327
11328         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11329
11330         * lily/open-type-font-scheme.cc (LY_DEFINE):
11331         new function ly:otf-font-table-data.
11332         (LY_DEFINE): new function otf-font?
11333
11334 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11335
11336         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11337         ($(outdir)/Fontmap.lily): idem.
11338
11339         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11340         for PFAEmmentaler-XXX.pfa. 
11341
11342         * Documentation/user/music-glossary.tely (accidental): NL
11343         translation of accidental.
11344
11345 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11346
11347         * flower/include/international.hh: Bugfix: include "string.hh".
11348
11349         * lily/include/mingw-compatibility.hh: New file.
11350
11351         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11352
11353         * configure.in: Search for mingw wcrtomb library.
11354
11355 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11356
11357         * scripts/convert-ly.py: Bug fix
11358
11359         * Documentation/user/changing-defaults.itely (Common tweaks):
11360         Added example where the context has to be specified explicitly
11361         (MetronomeMark). 
11362
11363 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11364
11365         * scripts/lilypond-book.py (ly_options): set timing to #f for
11366         notime option.
11367
11368         * scripts/convert-ly.py (conv): typo.
11369
11370         * flower/*.cc: remove <? and >?
11371         
11372         * lily/*.cc: remove <? and >?
11373
11374         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11375         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11376         editor.
11377
11378 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11379
11380         * lily/part-combine-engraver.cc: add space to variable list.
11381
11382 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11383
11384         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11385         remove-first to false (matches docs)
11386
11387         * Documentation/user/advanced-notation.itely: corrected docs
11388         concerning remove-first.
11389
11390 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11391
11392         * lily/part-combine-engraver.cc: make sure that the relevant
11393         properties are included in the documentation.
11394
11395 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11396
11397         * Documentation/user/lilypond-book.itely: Bernard's docs
11398         for \betweenLilyPondSystem.
11399
11400 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11401
11402         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11403         remarks.
11404
11405 2005-04-28  Pal Benko  <benkop@freestart.hu>
11406
11407         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11408         only on vertical lines of flexa shape, and use a constant
11409         thickness value for horizontal lines (patch slightly modified by
11410         Jürgen Reuter)
11411
11412         * lily/include/mensural-ligature.hh: make 2 comments clearer
11413
11414 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11415
11416         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11417         to need_extra_horizontal_space; bugfix: use class scope to avoid
11418         global namespace pollution
11419
11420         * Documentation/user/instrument-notation.itely (ligatures): added
11421         comment on possible future syntax change and how to work around
11422
11423         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11424         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11425         intervals (fixes agnus dei example)
11426
11427         * Documentation/user/instrument-notation.itely (white mensural
11428         ligatures): selected a more illustrative example
11429
11430 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11431
11432         * Documentation/index.html.in: specify utf-8 charset in meta content.
11433
11434 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11435
11436         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11437         empty 2nd page for single page.
11438
11439         * scm/lily.scm: remove p&c definitions.
11440
11441         * po/zh_TW.po (Module): new translation.
11442
11443         * lily/lily-guile.cc (ly_chain_assoc): remove.
11444
11445         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11446         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11447
11448 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11449
11450         * lily/beaming-info.cc: remove infinity_i
11451
11452         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11453
11454 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11455
11456         * Documentation/user/basic-notation.itely,
11457         instrument-notation.itely, advanced-notation.itely,
11458         changing-defaults.itely: minor fixes.  Added docs
11459         for colors to advanced-notation.itely.
11460
11461         * Documentation/user/advanced-notation.itely: fixed compile
11462         problem and added Bernard's x11-color doc patch.
11463
11464 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11465
11466         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11467         alright this time round.
11468
11469 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11470
11471         * Documentation/topdocs/INSTALL.texi (Top): idem.
11472
11473         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11474
11475         * VERSION (MAJOR_VERSION): release 2.5.21
11476
11477         * scm/output-ps.scm (grob-cause): bugfix.
11478
11479 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11480
11481         * cygwin/*: Update.
11482
11483         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11484         stuff.
11485
11486         * scm/output-ps.scm (grob-cause): Bugfix.
11487
11488         * scm/lily.scm (ly:load): Remove x11-color.
11489
11490         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11491         quote executable, fixes getting version from program --with
11492         --options.
11493         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11494         $ac_exeect.
11495
11496         * Documentation/user/GNUmakefile: Only build music-glossary with
11497         rendered lilypond snippets during web.
11498
11499 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11500
11501         * po/de.po: update.
11502
11503         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11504
11505 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11506  
11507         * scripts/abc2ly:
11508         second title line append with punctuation dash character;
11509         encode abc2ly python strings in utf-8
11510        
11511 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11512
11513         * scripts/abc2ly fix chords (again)
11514  
11515 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11516
11517         * scm/x11-color.scm: new file
11518         All x11 color names can be accessed with:
11519         #(x11-color 'ColorName),
11520         #(x11-color "ColorName") or:
11521         #(x11-color "color name")
11522         If the x11 color name is not recognised then it defaults
11523         to black
11524
11525         * scm/lily.scm: amended to call scm/x11-color.scm
11526
11527 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11528
11529         * Documentation/user/invoking.itely (Reporting bugs): comment out
11530         reference to online PNG bug repository.
11531
11532 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11533
11534         * lily/translator-scheme.cc (ly:translator-property): Remove.
11535         Update callers.
11536
11537         * lily/context-scheme.cc (ly:context-now): Move from translator.
11538         Update callers.
11539
11540 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11541
11542         * input/regression/grid-lines.ly (skips): refine example.
11543
11544         * scm/define-context-properties.scm
11545         (all-user-translation-properties): doc autoBeamCheck
11546
11547         * input/regression/grid-lines.ly (Module): new file.
11548
11549         * lily/grid-point-engraver.cc (Module): new file.
11550
11551         * lily/grid-line.cc (Module): new file.
11552
11553         * lily/grid-line-span-engraver.cc (Module): new file.
11554
11555         * lily/grid-line-interface.cc (Module): new file.
11556
11557 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11558
11559         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11560         missing parameter, actualy cdr through list.  Actually return a
11561         list with ENTRY removed (was '()).
11562
11563         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11564         opened.
11565         (do_conversion): Fix printing of continuation comma.
11566
11567         * Documentation/user/advanced-notation.itely (Beam formatting):
11568         Remove refbugs about compound time and mixed duration.
11569
11570         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11571         modulo moments explicitely.
11572
11573         * lily/moment.cc (operator %): New function.
11574
11575         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11576
11577         * lily/translator-scheme.cc (ly:translator-now,
11578         ly:translator-property): New function.
11579
11580         * scm/auto-beam.scm (default-auto-beam-check): New function.
11581
11582         * lily/auto-beam-engraver.cc (test_moment): Use it.
11583
11584         * flower/rational.cc (operator %): Bugfix.
11585
11586 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11587
11588         * scripts/abc2ly: Bugfix
11589
11590 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11591
11592         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11593         %'s on EndFont comment.
11594
11595         * lily/ledger-line-spanner.cc: some more words of explanation.
11596
11597 2005-04-20  John Williams <williams@tni.com>  
11598         
11599         * scripts/lilypond-book.py: htmlquote bugfix.
11600         Allow snippets to be given distinct filenames.
11601         Allow the default alt text to be overridden.
11602
11603 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11604
11605         * ly/performer-init.ly: Bugfix
11606
11607         * THANKS: Added bughunters.
11608
11609 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11610
11611         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11612
11613         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11614         position (was: use modulo measure length).
11615
11616         * configure.in (no gui_b): Remove optional gtk+ requirement.
11617
11618 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11619
11620         * Documentation/user/basic-notation.itely (Pitches): add
11621         LedgerLineSpanner.
11622
11623         * lily/dynamic-engraver.cc (process_music): set right bound to
11624         script if present. Else, do not set.
11625         (acknowledge_grob): only set right bound of finished spanner to
11626         note column if no other bound is set.
11627
11628         * python/lilylib.py (make_ps_images): switch back to png16m.
11629         
11630 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11631
11632         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11633         writing up to date file.  Add dvips usage suggestion.
11634
11635         * scripts/convert-ly.py: Fix error message.
11636         Print usage if no files on command line.
11637         (usage): Add example usage.
11638
11639         * input/test/compound-time.ly: New file.
11640
11641         * input/test/circle.ly: New file.
11642
11643         * Documentation/topdocs/NEWS.tely: Use them.
11644
11645         * input/test/boxed-stencil.ly: Remove \score.
11646
11647         * buildscripts/mf-to-table.py (base): Add .log dependency.
11648
11649         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11650         pfa's.  Add .log dependency
11651
11652         * scm/define-markup-commands.scm (lower): New command.
11653
11654         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11655         make it default.
11656
11657 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11658
11659         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11660         also to finished cresc as right bound. This fixes:
11661         skip-string-decresc.ly
11662
11663         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11664         relative_coordinate if extent is empty.
11665
11666         * lily/stem.cc (width_callback): determine correct extent if flag
11667         is not there. This fixes slur-no-flag.ly
11668
11669         * lily/grace-engraver.cc (consider_change_grace_settings): new
11670         function.
11671         (initialize): also consider_change_grace_settings() on
11672         initialization. Fixes large grace notes at start of score.
11673
11674         * lily/break-align-interface.cc (do_alignment): don't translate if
11675         total_extent is empty.
11676
11677         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11678
11679 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11680
11681         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11682         with slash.
11683
11684 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11685
11686         * stepmake/aclocal.m4: Remove tfm_path.
11687
11688 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11689
11690         * scm/music-functions.scm (markup-expression->make-markup): fix
11691         bug with cons arguments of markup commands.
11692         (music->make-music): fix music expression property list building
11693
11694 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11695
11696         * aclocal.m4: Massage package names.
11697
11698         * SCons updates.
11699
11700 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11701
11702         * VERSION (PACKAGE_NAME): release 2.5.20
11703
11704         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11705         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11706
11707         * lily/percent-repeat-engraver.cc (try_music): add measure before
11708         next_moment to future processing moment. Fixes:
11709         percent-repeat-mm-rest.ly
11710         (process_music): don't add moment for 2nd time.
11711
11712         * input/regression/repeat-percent.ly: add mmrests as extra test.
11713
11714         * lily/axis-group-engraver.cc (acknowledge_grob): read
11715         keepAliveInterfaces to decide what to kill.
11716
11717         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11718         percent-repeat-interface to keepAliveInterfaces. This fixes
11719         percent-repeat-harakiri.
11720
11721 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11722
11723         * SCons updates.
11724
11725 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11726
11727         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11728
11729         * aclocal.m4: remove --enable-tfm-path configure option
11730
11731         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11732
11733         * scm/backend-library.scm (postscript->png): newline after
11734         finishing command.
11735
11736         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11737         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11738
11739         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11740
11741         * lily/score.cc (default_rendering): use Music_output too.
11742
11743         * input/test/chord-names-languages.ly (Module): rename file.
11744
11745         * lily/text-spanner.cc: add bound-padding.
11746
11747         * lily/paper-book.cc (systems): accept Paper_score
11748         iso. Paper_system vector. 
11749
11750         * input/regression/line-arrows.ly: new file.
11751
11752         * lily/paper-score.cc (process): run get_paper_systems() only once.
11753
11754         * lily/line-spanner.cc (line_stencil): add arrows.
11755
11756 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11757
11758         * lily/line-interface.cc (make_arrow): new function. 
11759         (arrows): idem.
11760
11761 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11762
11763         * input/test/chord-names-german.ly: update for italian/french
11764         chords.
11765         
11766         * Documentation/user/instrument-notation.itely (Printing chord
11767         names): update.
11768
11769 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11770
11771         * lily/include/paper-score.hh (class Paper_score): remove unused
11772         prototypes.
11773
11774         * lily/book.cc (process): add -COUNT to midi output.
11775
11776         * lily/score.cc (book_rendering): remove outname argument
11777         (book_rendering): return list of Music_outputs. 
11778
11779         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11780
11781         * lily/book.cc (process): loop over Music_outputs returned from
11782         Score::book_rendering().
11783
11784         * lily/*.cc (width_callback): remove spurious "unused" warnings
11785         for assert (axis==[XY]_AXIS); 
11786
11787         * lily/include/music-output.hh (class Music_output): smobify class.
11788
11789         * lily/include/paper-score.hh (class Paper_score): make members
11790         private.
11791
11792         * lily/performance.cc (process): return #f iso. #<undefined>. This
11793         prevents #<undefined> leaking into GUILE-userspace.
11794
11795 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11796
11797         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11798
11799 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11800
11801         * scm/chord-name.scm : support for italian and french
11802         chords names.
11803
11804         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11805         a space defined by chordPrefixSpacer when the root name is
11806         direclty followed by a prefix.
11807
11808         * ly/engraver-init.ly : chordPrefixSpacer       
11809         * scm/define-context-properties.scm : chordPrefixSpacer
11810         * ly/property-init.ly : italianChords, frenchChords 
11811
11812 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11813
11814         * mf/feta-din.mf: Remove.
11815
11816         * mf/GNUmakefile (fontdir): Bugfix.
11817
11818         * mf/SConstruct: Some updates.
11819
11820         * SConstruct: Require pkg-config.
11821         (test_program): Bugfix for double digit version compares, use
11822         integer (not string-) compare.
11823         Optionally require gs 8.14.
11824
11825         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11826
11827         * lily/*: s/ifdef HAVE_*/if have/.
11828
11829         * SConstruct (test_lib): New function.  Update pkg-config and some
11830         other requirements.
11831
11832         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11833         freetype, pangof2t.
11834
11835 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11836
11837         * po/lilypond.pot, ...: Update using bison-CVS.
11838
11839         * python/lilylib.py (make_ps_images): Fixo.
11840
11841 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11842
11843         * python/lilylib.py (make_ps_images): typo.
11844
11845         * configure.in (gui_b): make bison optional.
11846
11847         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11848
11849 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11850
11851         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11852         with one parameter can be defined in a LaTeX file when processed
11853         by lilypond-book this will be evaluated between the systems of
11854         a multi-system score. The parameter is the number of systems processed.
11855
11856 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11857
11858         * python/lilylib.py (make_ps_images): Escape newline.
11859
11860         * Documentation/user/music-glossary.tely: Run
11861         texinfo-all-menus-update.
11862
11863 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11864
11865         * scm/lily-library.scm (old-relative-not-used-message)
11866         (version-not-seen-message): Add input-file-name-location to message.
11867
11868         * lily/parser.yy (lilypond): Add token aliases.
11869
11870         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11871         not confuse with alteration.
11872         (alteration): Add.
11873
11874 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11875
11876         * python/lilylib.py (make_ps_images): use -dEPSCrop
11877
11878         * VERSION (PACKAGE_NAME): release 2.5.19 
11879
11880         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11881         only put xrefs in info documentation.
11882
11883         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11884         .pdf rule to tex-rules.make.
11885
11886         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11887         from -systems.* output.
11888
11889         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11890         directly, remove -$(PAGESIZE) target.
11891
11892         * input/test/embedded-postscript.ly: update.
11893
11894 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11895
11896         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11897
11898         * Documentation/user/changing-defaults.itely (Font selection):
11899         document font-name.
11900
11901         * input/regression/font-name.ly: show Pango fonts for
11902         font-name. Update example. 
11903
11904         * lily/pango-select.cc (properties_to_pango_description): don't
11905         convert symbol font-size to number, but use to lookup.
11906
11907         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11908
11909         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11910         (NAME . FILE-NAME) tuples for font descriptions. 
11911         (write-preamble): display BeginFont DSC comments.
11912
11913         * python/fontextract.py (write_extracted_fonts): new file. Extract
11914         font resources from a PS file.
11915
11916         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11917         (Compile_error.process_include): do_file returns chunks.
11918
11919         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11920
11921         * make/lysdoc-targets.make: .texi is .PRECIOUS
11922
11923         * scripts/lilypond-book.py (write_if_updated): new function.
11924
11925 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11926
11927         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11928
11929 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11930
11931         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11932
11933         * input/regression/markup-syntax.ly: remove \score.
11934
11935         * scm/define-markup-commands.scm (draw-circle): add fill argument
11936
11937         * scm/stencil.scm (make-circle-stencil): add fill argument
11938
11939         * ps/music-drawing-routines.ps: add fill argument.
11940
11941         * ly/performer-init.ly: add CueVoice to MIDI too.
11942
11943         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11944         EndEPSF.
11945
11946         * input/regression/markup-eps.ly: new file.
11947
11948         * scm/framework-ps.scm (write-preamble): change order: vars should
11949         be inited before procedures.
11950
11951         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11952         for EPS files.
11953
11954         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11955
11956 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11957
11958         * configure.in (gui_b): add check for ghostscript 8.15
11959
11960 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11961
11962         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11963         start of line. Fixes cresc-after-newline.ly
11964
11965         * lily/source-file.cc (file_line_column_string): use get_column().
11966
11967 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11968
11969         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11970
11971 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11972
11973         * lily/*: use message () iso progress_indication () for messages.
11974         Revise/uniformise user messages.
11975
11976         * flower/warn.cc (progress_indication): New function.
11977         (message): Use it.  Fixes newline problems.
11978
11979         * config.make.in (webdir): Sort out install dirs.
11980
11981         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11982
11983         * python/lilylib.py (command_name): Bugfix.
11984         (make_ps_images):
11985
11986 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11987
11988         * lily/main.cc: --help says what types of backends are availabe
11989
11990 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11991
11992         Fix ./VERSION dependency, and without need to reconfigure.
11993
11994         * lily/main.cc (setup_paths): Update.
11995
11996         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11997
11998         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11999
12000         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
12001         Add \line for some simplistic cases.
12002
12003         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
12004
12005 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12006
12007         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
12008         to compile LY files (useful for adding eg. "-I" args)
12009         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
12010         2Gnome command for gnome backend.
12011         (LilyPond-command-formatgnome): call the 2Gnome command. key
12012         binding: C-c C-g
12013
12014 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12015
12016         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
12017         depend on all PNG images.
12018
12019 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12020
12021         * GNUmakefile.in: Bugfix: also link .map files.
12022
12023 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12024
12025         * scm/music-functions.scm (music->make-music): generate 
12026         a (make-music ...) sexpr from a music expression.
12027         (display-scheme-music): use guile pretty printer to display the
12028         make-music sexpr.
12029
12030 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12031
12032         * ly/engraver-init.ly: reindent.
12033         Add CueVoice.
12034
12035         * scm/music-functions.scm (music-pretty-string): handle moments
12036         too.
12037         (music-pretty-string): only print non-empty lists.
12038         (cue-substitute): create CueVoice context, which has smaller type.
12039
12040         * lily/moment-scheme.cc (LY_DEFINE): new methods
12041         ly:moment-grace-{numerator,denominator}
12042
12043         * lily/context-handle.cc: remove quit() method. 
12044
12045         * lily/font-config.cc (init_fontconfig): be verbose about font path.
12046         (init_fontconfig): success is 0, not !0
12047
12048 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12049
12050         * mf/feta-nummer-code.mf (code): add plus glyph.
12051
12052         * lily/tie.cc (print): idem.
12053
12054         * lily/slur.cc (print): don't use thickness property for
12055         slur shape-thickness.
12056
12057         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
12058         while adding stencils.
12059
12060         * scm/define-markup-commands.scm (with-color): with-color markup
12061         command.
12062         (whiteout): new markup command 
12063         (filled-box): new markup command
12064
12065 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12066
12067         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
12068         test for PDF docs.
12069
12070         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12071         PFAAybabtu-Regular.  Fixes feta font in PDFs.
12072         
12073         Notes for tetex-3.0 make web:
12074            psclean.map: s/uhv8a/uhvr8a/
12075            config.ps add:
12076                 p +psfonts_t1.map
12077                 p +psclean.map
12078                 p +typeface.map
12079
12080 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12081
12082         * scm/music-functions.scm (music-pretty-string): fix bug with
12083         string argument.
12084
12085 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12086
12087         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12088
12089 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12090
12091         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
12092         only process options if they're there.
12093         (write_file_map): add version-seen? to snippet-map.ly
12094
12095 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12096
12097         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
12098         formatting cleanups.
12099
12100         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12101         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12102
12103 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12104
12105         * scm/framework-ps.scm (ps-font-command): don't hash, just use
12106         name directly.
12107
12108         * lily/main.cc (setup_paths): either add mf/out to search path or 
12109         fonts/{otf,type1,etc}
12110         
12111         * lily/font-config.cc (init_fontconfig): either add mf/out to
12112         FontConfig or fonts/{otf,type1,etc}
12113
12114         * GNUmakefile.in: don't put mf/ link in share/ dir.
12115
12116         * lily/staff-spacing.cc: move same-direction-correction to
12117         note-spacing-interface
12118
12119         * scm/lily.scm (lilypond-main): use variable argument count for
12120         exception handler.
12121
12122         * lily/font-config.cc (init_fontconfig): add operator pacification
12123         message.
12124
12125         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12126
12127         * buildscripts/gen-emmentaler-scripts.py (i): generate
12128         PFAEmmentaler as well.
12129
12130         * scm/framework-ps.scm (munge-lily-font-name): new function
12131         (write-preamble): hack: insert PFA equivalent of CFF into
12132         .PS. This makes LilyPond output printable on normal PS printers
12133         again.
12134
12135         * buildscripts/gen-emmentaler-scripts.py (i): generate
12136         PFAEmmentaler.pfa aswell.
12137
12138 2005-04-06  John Williams <williams@tni.com>  
12139         
12140         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12141         
12142 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12143
12144         * scm/page-layout.scm (default-page-make-stencil): always combine
12145         the header stencil, even if empty. This prevents the body text to
12146         reach up to the margins.
12147
12148         * po/rw.po (Module): new file, for Kinyarwanda.
12149
12150         * input/test/spacing-optical.ly (Module): new file.
12151
12152         * lily/staff-spacing.cc: add same-direction-correction
12153
12154 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12155
12156         * Documentation/user/introduction.itely (Engraving): Comment-out
12157         non-existent file.
12158
12159 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12160
12161         * scm/define-grob-properties.scm (all-user-grob-properties): add
12162         same-direction-correction
12163
12164         * VERSION: release 2.5.18
12165
12166 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12167
12168         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12169         dereferencing.  Fixes make web.
12170
12171         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12172         errno.h.
12173
12174         * Documentation/user/: Fix links.
12175
12176 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12177
12178         * lily/text-interface.cc (Module): rename from text-item.cc
12179
12180         * input/regression/apply-output.ly (texidoc): function naming fix.
12181
12182         * lily/time-signature-performer.cc (derived_mark): new function.
12183
12184         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12185
12186         * scripts/lilypond-book.py (find_linestarts): new function.
12187         (find_toplevel_snippets): keep track of line numbers.
12188
12189         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12190         all key changes.
12191
12192         * ly/declarations-init.ly (partCombineListener): use
12193         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12194
12195         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12196
12197 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12198
12199         * lily/text-item.cc: Fix link.
12200
12201         * Documentation/user/changing-defaults.itely (Changing defaults):
12202         Fix programs reference links.
12203
12204         * Documentation/user/music-glossary.tely: Convert to utf-8.
12205
12206 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12207
12208         * make/lilypond-vars.make: remove TEXMF from variables.
12209         remove DEB_BUILD pk font variables.
12210         remove GUILE_LOAD_PATH
12211         remove TeX memory vars.
12212
12213 2005-04-04  Werner Lemberg  <wl@gnu.org>
12214
12215         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12216
12217 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12218
12219         * ps/lilyponddefs.ps: remove reencode-font
12220
12221         * lily/simple-spacer.cc (add_columns): also compare
12222         directly. Column rank doesn't distinguish between broken and
12223         unbroken columns. This fixes large spaces before time sig changes.
12224
12225         * Documentation/user/point-and-click.itely: document ly:set-option.
12226
12227         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12228         point_and_click_global is set.
12229
12230         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12231         ly:set-option argument.
12232
12233 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12234
12235         * GNUmakefile.in: Include symlinks in webball.
12236
12237         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12238         source dir for split and non-split manuals.
12239
12240         * Documentation/user/*y: Fix @uref/@inputfile links for
12241         split/non-split HTML documents.
12242
12243         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12244         .ps.gz.
12245         
12246 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12247
12248         * GNUmakefile.in: Add newline.
12249
12250 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12251
12252         * tex/lilyponddefs.tex: use color instead of xcolor
12253         * scm/output-tex.scm: minor editing
12254
12255 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12256
12257         * scm/music-functions.scm (display-scheme-music): pretty printer
12258         for music expressions.
12259
12260 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12261
12262         * buildscripts/install-info-html.sh (index_file): Fix link.
12263
12264 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12265
12266         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12267
12268         * Documentation/index.html.in: Add size estimates with some big pages.
12269
12270         * Documentation/user/tutorial.itely (Running LilyPond for the
12271         first time): Add/replace some @rglos links.  TODO: add more
12272         @rglos links in tutorial, test non-intrusiveness (.css).
12273
12274         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12275         annoying's indication of referencing external document.
12276
12277         * Documentation/user/GNUmakefile: Split version of glossary too.
12278         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12279         links, not only for html.
12280
12281         * Documentation/user/introduction.itely: Fix some links for other
12282         than html, do not use `here' as link name.
12283
12284 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12285
12286         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12287         @glossaryref.
12288
12289 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12290
12291         * scm/page-layout.scm (default-page-make-stencil): only add header
12292         if existing and not empty. Fixes spurious programming error.
12293
12294         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12295
12296 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12297
12298         * scm/output-tex.scm: implement {re,}setcolor
12299         * tex/lilyponddefs.tex: use color package
12300
12301 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12302
12303         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12304         additions to website.
12305
12306         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12307
12308         * Documentation/user/macros.itexi: Fix @usermanref html links in
12309         split documents: use @inforef.
12310
12311 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12312
12313         * Documentation/user/programming-interface.itely: minor fix.
12314
12315         * Documentation/user/advanced-notation.itely: added info to
12316         Metronome markings.
12317
12318 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12319
12320         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12321         use box-stencil.  Remove y-padding argument.
12322         (make-stencil-circler): New function.
12323
12324         * buildscripts/lilypond-words.py (F): 
12325         * elisp/SConscript (a): 
12326         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12327         * vim/SConscript (a): 
12328         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12329
12330         * lily/general-scheme.cc: Build fix.
12331
12332         * scm/markup.scm:
12333         * input/regression/markup-scheme.ly: 
12334         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12335
12336         * scm/stencil.scm (make-circle-stencil): New function.
12337
12338         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12339         name (was cicle).  Update callers.
12340         (circle): New markup command, similar to box.
12341
12342         * scm/stencil.scm (circle-stencil): New function.
12343
12344 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12345
12346         * configure.in: Detect libutf8/wchar.h variant.
12347
12348         * stepmake/aclocal.m4: Modify shared size test.
12349
12350 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12351
12352         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12353
12354 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12355
12356         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12357         
12358         * VERSION (PACKAGE_NAME):  release 2.5.17
12359
12360 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12361
12362         * scm/backend-library.scm (postscript->png): Fix comment and png
12363         message.
12364
12365         * GNUmakefile.in (link-tree): Fix locales.
12366
12367 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12368
12369         * lily/stencil-scheme.cc (LY_DEFINE): change to
12370         ly:stencil-aligned-to, non mutating.
12371
12372         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12373
12374         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12375
12376         * lily/quote-iterator.cc (derived_mark): call
12377         Music_wrapper_iterator::derived_mark() too.
12378
12379         * lily/grace-engraver.cc (derived_mark): change signature, add
12380         const.
12381
12382 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12383
12384         * SConstruct (symlink): 
12385         * GNUmakefile.in (link-tree): Add scripts to prefix.
12386
12387         * lily/general-scheme.cc (ly:effective-prefix): New function.
12388
12389         * scm/backend-library.scm (postscript->png): Use it.
12390
12391 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12392
12393         * lily/paper-score.cc (process): don't delete grobs after
12394         producing stencils. 
12395
12396         * scm/part-combiner.scm (determine-split-list): switch off
12397         debugging info.
12398
12399         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12400         if available.
12401
12402         * scm/define-context-properties.scm
12403         (all-user-translation-properties): add stringNumberOrientations.
12404
12405         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12406         so fingering and string-numbers are separately controlled.
12407
12408 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12409
12410         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12411         not use debugging.
12412
12413 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12414
12415         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12416
12417         * config.hh.in: add HAVE_FONTCONFIG.
12418
12419         * Documentation/user/instrument-notation.itely (String number
12420         indications): new node.
12421
12422         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12423
12424         * lily/new-fingering-engraver.cc (add_string): new function. 
12425         (acknowledge_grob): accept string-number-event as well.
12426
12427         * scm/define-markup-commands.scm (circle): new markup command.
12428
12429         * scm/output-lib.scm (print-circled-text-callback): new function.
12430
12431         * lily/GNUmakefile: move ifeq after include stepmake.make.
12432
12433 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12434
12435         * config.make.in (HAVE_LIBKPATHSEA_SO):
12436         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12437
12438         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12439         add KPATHSEA_LIBS.
12440
12441         * debian/watch: 
12442         * debian/control: Update.
12443
12444 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12445
12446         * input/test/title-markup.ly (spaceTest): remove.
12447
12448         * input/test/embedded-tex.ly (Module): remove.
12449
12450         * input/test/music-box.ly: use 'name property, not ly:music-name.
12451
12452         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12453
12454         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12455
12456 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12457
12458         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12459         about xdeltas.  Add information about CVS.
12460
12461         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12462         gracefully handle failed files.
12463
12464         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12465
12466         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12467         small fixes.
12468
12469         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12470         No unnecessarily specific i18n messages.  Remove stray `1'.
12471
12472 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12473
12474         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12475         documentencoding
12476
12477         * scm/documentation-lib.scm (texi-file-head): set utf-8
12478         documentencoding.
12479
12480         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12481         Delta, not the Symbol one. 
12482
12483         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12484         for the .map file.
12485
12486         * Documentation/topdocs/INSTALL.texi (Top): add running
12487         requirement as compilation requirement.
12488
12489 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12490
12491         * buildscripts/mutopia-index.py (headertext): add h1 header and
12492         utf-8 charset meta field.
12493
12494         * input/GNUmakefile: prune example list.
12495
12496         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12497         options.
12498
12499         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12500         extent for visible stems.
12501
12502         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12503
12504 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12505
12506         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12507
12508         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12509
12510 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12511
12512         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12513         pass inf/nan into slur scoring.
12514
12515         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12516         page.
12517
12518         * scripts/abc2ly.py (dump_voices): use alphabet().
12519
12520 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12521         
12522         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12523
12524 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12525         
12526         * flower/include/virtual-methods.hh: simplify. Patch by
12527
12528 2005-03-25  John Williams <williams@tni.com>  
12529
12530         * scripts/lilypond-book.py (main): add png for HTML too, guess
12531         only if necessary. 
12532
12533 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12534
12535         * Documentation/topdocs/INSTALL.texi: now recommends
12536         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12537
12538         * Documentation/user/basic-notation.itely,
12539         Documentation/user/tutoria.itely: warn about
12540         only one (phrasing) slur at once.
12541
12542 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12543
12544         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12545
12546 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12547
12548         * Documentation/user/basic-notation.itely: fixed info about
12549         ending a (de)cresc.
12550
12551         * Documentation/user/lilypond-book.itely: fixed
12552         lilypond-book filter example and warned about not doing
12553         --filter and --process at the same time.
12554
12555 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12556
12557         * lily/parser.yy (bass_number),
12558         Documentation/user/instrument-notation.itely (Figured bass): 
12559         Add the possibility to use text markup in figured bass. 
12560
12561 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12562
12563         * Documentation/user/global.itely: added info about naming
12564         identifiers and breakbefore.
12565
12566         * Documentation/user/invoking.itely: added info about batch
12567         processing files with convert-ly, removed references to TeX
12568         in the jail section.
12569
12570         * Documentation/user/examples.itely: possibly fixed piano
12571         dynamics.
12572
12573         * Documentation/user/advanced-notation.itely: added info
12574         about removing other types of Staff.
12575
12576         * Documentation/user/instrument-notation.itely: possibly
12577         fixed piano staff line switch.
12578
12579         * Documentation/user/changing-defaults.itely: added info
12580         about using normal font in titles.
12581
12582 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12583
12584         * VERSION (PATCH_LEVEL): release 2.5.16
12585
12586         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12587         explicitly.
12588
12589 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12590
12591         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12592         whitespace.
12593
12594         * python/lilylib.py (make_ps_images):
12595         * scm/backend-library.scm (postscript->pdf, postscript->png):
12596         Quote file name.  Use format rather than string-append juggling.
12597
12598 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12599
12600         * python/lilylib.py (make_ps_images): add x to -g argument. 
12601
12602         * lily/key-performer.cc (create_audio_elements): don't use
12603         scm_eval_string. Check for minor 3rd directly.
12604   
12605         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12606         (sarabandeCelloGlobal): key is D minor, not F major.
12607
12608 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12609
12610         Fix truncated --png output (Peter Danenberg).
12611         
12612         * python/lilylib.py (make_ps_images):
12613         * scripts/ps2png.py (copyright): Grok --papersize option.
12614
12615         * scm/backend-library.scm (postscript->png): Add parameter
12616         PAPERSIZE.  Update callers.
12617
12618         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12619         Fixes symbol placement.
12620
12621         * lily/spanner.cc: 
12622         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12623         <libc-extension.hh>).
12624
12625 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12626
12627         * Nitpick run.
12628
12629         * buildscripts/fixcc.py: Update.
12630
12631         Builddir run fixes.
12632
12633         * HACKING (datadir): Add VERSION.
12634
12635         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12636         higher up.
12637
12638 2005-03-15  Werner Lemberg  <wl@gnu.org>
12639
12640         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12641         diagonal stem doesn't become thinner.
12642
12643 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12644
12645         * buildscripts/fixcc.py: Fixes (Werner).
12646
12647 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12648
12649         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12650         Emmentaler/Aybabtu.
12651
12652         * GNUmakefile.in: fix lilypond-words path.
12653
12654         * po/tr.po: update to 2.3.21
12655
12656         * lily/new-fingering-engraver.cc (position_scripts): take priority
12657         from head position.
12658
12659         * input/regression/finger-chords-order.ly (texidoc): new file.
12660
12661 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12662
12663         * make/ly-rules.make: 
12664         * stepmake/aclocal.m4: 
12665         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12666
12667         * buildscripts/fixcc.py (rules): Leave space after operator.
12668
12669 2005-03-14  Werner Lemberg  <wl@gnu.org>
12670
12671         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12672         top of the glyph with smooth curve.
12673
12674 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12675
12676         * Documentation/user/global.itely (Page layout): remove
12677         printpagenumber.
12678
12679 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12680
12681         * input/regression/mensural-ligatures.ly: new file (with examples
12682         compiled by Pal Benko).
12683
12684         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12685         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12686         musicglyph access.  Many small beautifications in ancient
12687         examples.
12688
12689         * input/test/divisiones.ly: fixed indentation; small
12690         beautifications
12691
12692         * ly/engraver-init.ly: added FIXME comment
12693
12694         * scripts/lilypond-book.py,
12695         Documentation/user/lilypond-book.itely: added music fragment
12696         option "packed" to lilypond-book
12697
12698         * Documentation/user/instrument-notation.itely: Bugfix: added
12699         missing LedgerLineSpanner color setting in several places.  Added
12700         music fragment option "packed" to VaticanaContext example.
12701
12702 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12703
12704         * scm/define-grobs.scm (all-grob-descriptions): switch off
12705         Hyphen_spanner::set_spacing_rods 
12706
12707         * lily/lyric-hyphen.cc (print): add padding between syllable and
12708         hyphen.
12709         (print): shorten hyphen in tight situations (determine using
12710         minimum-length)
12711
12712         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12713         0.4pt.
12714
12715 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12716
12717         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12718
12719         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12720         header/footer markings for regression-test.
12721
12722         * scm/backend-library.scm (output-scopes, header-to-file): Move
12723         from framework-tex.scm.
12724
12725         * scm/framework-ps.scm (output-framework)
12726         (output-preview-framework):
12727         * scm/framework-eps.scm (output-classic-framework)
12728         (output-framework): Use it.  Fixes collated files.
12729
12730 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12731
12732         * input/sakura-sakura.ly: 
12733         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12734
12735         * buildscripts/guile-gnome.sh: Update.
12736
12737         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12738
12739         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12740
12741 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12742
12743         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12744         culprit: always exit the loop if we find a rod, even if it has
12745         distance < 0. 
12746
12747         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12748         algorithm.
12749
12750         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12751         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12752
12753         * scm/output-svg.scm (dashed-line): new  function body.
12754         
12755         * GNUmakefile.in: create .htaccess.
12756
12757 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12758
12759         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12760
12761 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12762
12763         * VERSION (PACKAGE_NAME): release 2.5.15
12764
12765         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12766
12767         * scm/framework-svg.scm (output-framework): put scaling in
12768         document header. Apply scaling only once.
12769         (output-framework): dump page size in px, not mm. 
12770
12771         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12772         from font-size.
12773
12774         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12775         ly:outputter-output-scheme, new function.
12776
12777         * scm/output-svg.scm (pango-description-to-svg-font): new function
12778
12779 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12780
12781         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12782         target.
12783
12784         * input/typography-demo.ly: new file.
12785
12786 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12787
12788         * Documentation/user/global.itely (File structure): Add markup blocks
12789         to toplevel expressions.
12790         (Multiple movements, Creating titles): Add markup blocks.
12791
12792         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12793         <libc-extension.hh>).
12794
12795         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12796
12797         * flower
12798         * lily
12799         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12800
12801 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12802
12803         * lily/accidental.cc: special bboxes for natural. 
12804
12805         * mf/feta-toevallig.mf: make stems heavier.
12806
12807         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12808         texts as well.
12809
12810         * mf/feta-klef.mf: revise. 
12811
12812         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12813
12814         * mf/feta-klef.mf: add rounded curve at top. 
12815         make thinnib a little heavier.
12816
12817 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12818
12819         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12820
12821         * buildscripts/fixcc.py: New file.
12822
12823         * input/regression/utf8.ly: Update Debian font description.
12824
12825 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12826
12827         * stepmake/aclocal.m4: Fix test.
12828
12829 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12830
12831         * Documentation/user/invoking.itely: added Sebastino Vigna's
12832         docs for the --jail option.
12833
12834 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12835
12836         * lily/stem.cc (print): only produce stemlets if there are no
12837         noteheads on this stem.
12838
12839         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12840         don't crash on stemlet (visible stem without heads).
12841
12842         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12843         unbroken situations. 
12844
12845         * scm/output-lib.scm (center-invisible): new function.
12846
12847         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12848         wishes to determine loose column space.
12849
12850         * lily/font-config.cc (init_fontconfig): add
12851         fonts/{otf,type1,cff}  to path.
12852
12853         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12854
12855         * mf/GNUmakefile (Module): install all fonts under otf/
12856
12857         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12858         replace /fonts/otf/ by /ps/ 
12859
12860         
12861 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12862
12863         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12864
12865         * lily/book.cc (process): Oops, add score_.header_.
12866
12867         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12868
12869         * lily/parser.yy: Handle toplevel and book texts as score.
12870
12871         * scm/page-layout.scm (default-page-make-stencil):
12872         Bugfix: (page-properties rename.
12873
12874         * scm/backend-library.scm (ly:system): Typo.
12875
12876 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12877
12878         * stepmake/stepmake/executable-targets.make (installexe): don't
12879         strip installed executables
12880
12881         * lily/font-select.cc (get_font_by_design_size): revert
12882         pango_description_string as well.
12883
12884         * lily/system.cc (set_loose_columns): put loose column just left
12885         of next column.
12886
12887         * lily/include/group-interface.hh (extract_grob_array): rename
12888         from Pointer_group_interface__extract_grobs
12889
12890         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12891
12892         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12893         function. Keep ledgered note heads at a minimum distance.
12894         Introduce minimum-length-fraction
12895         (print): introduce length-fraction property.
12896
12897 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12898
12899         * tex/GNUmakefile: remove latin1.enc rules.
12900
12901 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12902
12903         * scm/titling.scm: Typo.
12904
12905         * input/regression/score-text.ly: Really add.
12906
12907         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12908
12909 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12910
12911         * lily/open-type-font-scheme.cc:  new file.
12912
12913 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12914
12915         * scm/titling.scm (layout-extract-page-properties): Rename from
12916         page-properties.  Update callers.
12917
12918         * lily/lexer.ll (Lily_lexer):
12919         * lily/parser.yy: Junk lyric_markup state.
12920
12921         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12922
12923         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12924         Add texts parameter.
12925
12926 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12927
12928         * lily/lexer.ll (lyric_markup): New mode.
12929         (Lily_lexer::push_lyric_markup_state): New method.
12930         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12931
12932         * lily/parser.yy (book_body):
12933         (toplevel_expression): Grok \markup texts.
12934
12935         * lily/score-scheme.cc (ly:music-scorify): 
12936         * scm/lily-library.scm (collect-music-for-book): Take texts
12937         parameter.
12938
12939         * lily/score.cc (texts_): New member.
12940
12941         * lily/paper-book.cc (systems): Format score texts.
12942
12943         * score-text.ly: New file.
12944
12945         * ttftool/SConscript:
12946         * kpath-guile/SConscript: New file.
12947
12948         * lily/SConscript:
12949         * SConstruct: Update.
12950
12951 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12952
12953         * VERSION (PACKAGE_NAME): release 2.5.14
12954
12955 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12956
12957         * lily/main.cc: Add dummy xgettext markers.
12958
12959 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12960
12961         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12962         requirements
12963
12964         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12965         executable is < 40k
12966
12967         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12968         hack.
12969
12970 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12971
12972         * flower/libc-extension.cc:
12973         * flower/include/libc-extension.hh: [Open]BSD simply cast
12974         cookie/funopen declarations.
12975
12976         * stepmake/aclocal.m4: Check for libkpathsea.so.
12977
12978         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12979         dl_kpse_find_file.
12980
12981 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12982
12983         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12984         (open_library): alternative for static library.
12985
12986 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12987
12988         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12989
12990         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12991
12992         Drop run-time dependency on teTeX.
12993
12994         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12995
12996         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12997         KPATHSEA_LIBS in LIBS.
12998         (STEPMAKE_DLOPEN): New function.
12999
13000         * lily/font-config.cc (init_fontconfig): Use dir for directory,
13001         not path.
13002
13003         * flower/file-path.cc (directories): Rename from paths, as this
13004         return an array of directories (a single path).
13005
13006 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13007
13008         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
13009
13010         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
13011         new ly:kpathsea-find-file
13012
13013         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
13014
13015         * kpath-guile/GNUmakefile: new file
13016
13017         * buildscripts/gen-emmentaler-scripts.py (i): generate
13018         emmentaler-X.fontname as well.
13019
13020         * buildscripts/ps-embed-cff.py: new script
13021
13022         * scm/lily-library.scm: remove ps-embed-cff.
13023
13024         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
13025         font loading. 
13026
13027         * scm/font.scm (add-music-fonts): load dynamics/numbers through
13028         fontconfig as well.
13029
13030         * lily/font-config.cc (init_fontconfig): add cff/ too.
13031
13032         * ly/generate-embedded-cff.ly: capitalize.
13033
13034         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
13035         so as to register the pango font.
13036
13037         * lily/font-config.cc (init_fontconfig): add
13038         prefix/{otf,type1,mf/out} to fontconfig path.
13039
13040         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
13041         overrides all. 
13042
13043         * configure.in (gui_b): remove ec mftrace check
13044
13045         * config.hh.in: use lilypond-Major.Minor as data directory.
13046
13047         * scm/framework-ps.scm (dump-page): use output-units for landscape.
13048
13049         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
13050         name.
13051
13052 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13053
13054         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
13055         error messages.
13056
13057         * flower/libc-extension.cc:
13058         * flower/include/libc-extension.hh: [Open]BSD fixes for
13059         cookie/funopen declarations.
13060
13061 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13062
13063         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13064         emmentaler.
13065
13066         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13067         lcrm10.
13068
13069         * scm/define-markup-commands.scm (fontsize): new markup
13070         command. Also set baseline-skip
13071
13072 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13073         
13074         * lily/main.cc (do_chroot_jail): paranoia security for webserver
13075         use.
13076
13077 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13078
13079         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13080
13081         * lily/pdf.cc: remove PDF related files
13082
13083 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13084
13085         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13086         <hamamatsu@gmx.de>
13087
13088 2005-03-05  Graham Percival  <gperlist@shaw.ca>
13089
13090         * Documentation/user/advanced-notation.itely: first draft
13091         of reorg done.
13092
13093         * Documentation/user/global.itely: fixed (sub)section
13094         bits of MIDI.
13095
13096 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13097
13098         * cygwin/mknetrel (extras): Bufix (Bertalan).
13099
13100         * Documentation/user/basic-notation.itely (Chords): @ref fix.
13101         * Documentation/user/instrument-notation.itely (Introducing chord
13102         names): Compile fix: must have unique name.
13103
13104 2005-03-02  Graham Percival  <gperlist@shaw.ca>
13105
13106         * Documentation/user/instrument-notation.itely: reorg.
13107
13108 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13109
13110         * scm/output-gnome.scm:
13111         * scm/output-svg.scm: Fix font scaling.
13112
13113 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13114
13115         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13116         what link to use best.
13117
13118         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13119         * Documentation/user/tutorial.itely (Automatic and manual beams):
13120         Fix @ref.
13121
13122         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13123         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13124         * scm/framework-gnome.scm (tweak): Use it.
13125
13126 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13127
13128         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13129
13130         * scm/output-ps.scm (white-text): reinstate white-text
13131
13132 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13133
13134         * scm/output-ps.scm (offset-add): Remove.
13135
13136         * scm/lily-library.scm (offset-flip-y): New function.
13137         * scm/framework-gnome.scm (tweak): Use it.
13138
13139         * scm/output-gnome.scm (grob-cause): Add parameter.
13140
13141         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13142         * scm/output-ps.scm (url-link): Move.
13143         (white-text): Warn user about brokenness.
13144
13145         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13146         wrt ghostscript.
13147
13148 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13149
13150         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13151         if body length smaller than measure length.
13152
13153         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13154         for Y.
13155
13156         * ly/titling-init.ly (tagline): put default tagline in \paper
13157
13158 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13159
13160         * lily/kpath.cc: 
13161         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13162
13163         * scm/lily-library.scm (version-not-seen-message): New function.
13164         * ly/init.ly: Use it.
13165
13166         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13167         breaks as progess.
13168
13169         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13170         whitespace with l10n message.
13171
13172         * scm/framework-tex.scm (convert-to-ps):
13173         (convert-to-dvi): Do not use overly specific l10n messages.
13174
13175         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13176
13177         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13178         merge stderr with stdout.  
13179
13180 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13181
13182         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13183         Neeracher).
13184
13185 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13186
13187         * Documentation/user/instrument-notation.teily: moved
13188         \arpeggio to Basic.
13189
13190         * Documentation/user/advanced-notation.itely: Articulation to
13191         Basic, a bunch of stuff from Basic moved to Advanced.
13192
13193         * Documentation/user/basic.itely: swapped various sections,
13194         reorganized Basic.
13195
13196 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13197
13198         * flower/memory-stream.cc: 
13199         * flower/libc-extension.cc: Remove obsolete #undefs.
13200
13201         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13202         more carefully.
13203
13204 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13205
13206         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13207         dependency.
13208
13209         * VERSION (PACKAGE_NAME): release 2.5.13
13210
13211         * GNUmakefile.in (web-ext): don't ship ps.gz
13212
13213         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13214         stdout
13215
13216 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13217
13218         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13219         without libintl.  Now it compiles too.
13220
13221 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13222
13223         * Documentation/user/basic-notation.itely,
13224         instument-notation.itely, advanced-notation.itely:
13225         split up contents of notation.itely.
13226
13227         * Documentation/user/notation.itely: file removed.
13228
13229         * Documentation/user/invoking.itely, converters.itely:
13230         moved convert-ly info to invoking.itely.
13231
13232         * Documentation/user/global.itely, changing-defaults.itely,
13233         sound-output.itexi: moved global settings, file layout, and
13234         sound into global.itely.
13235
13236         * Documentation/user/sound-output.itexi: file removed.
13237
13238         * Documentation/user/lilypond.tely: removed links to
13239         notation.itely and sound.itely.
13240
13241 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13242
13243         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13244
13245         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13246  
13247         * THANKS: add sponsor.
13248
13249         * scm/define-markup-commands.scm (with-url): new markup command.
13250
13251         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13252         tagline.
13253         
13254         * scm/output-tex.scm (url-link): stub.
13255
13256         * scm/output-ps.scm (url-link): new function.
13257
13258         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13259         ly:set-point-and-click
13260
13261 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13262
13263         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13264         based on pdf-viewer setting.
13265
13266         * scm/framework-ps.scm (write-preamble): Find and set preferred
13267         pdf-viewer.
13268
13269 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13270
13271         * Documentation/user/point-and-click.itely: update for PDF point &
13272         click.
13273
13274         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13275         editors based on EDITOR setting.
13276
13277 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13278
13279         * scm/*: Oops, more grand 2005 replace bits.
13280
13281 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13282
13283         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13284
13285         * scm/output-ps.scm (grob-cause): point & click support for
13286         PostScript
13287
13288 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13289
13290         * lily/input-scheme.cc (LY_DEFINE): rename to
13291         ly:input-file-line-column
13292
13293 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13294
13295         * Documentation/user/examples.itely: small fix from Steve Doonan.
13296
13297         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13298
13299         * THANKS: added Yuval Harel.
13300
13301         * Documentation/user/{various}: inserted two spaces after a period.
13302
13303         * Documentation/user/lilypond.tely: added framework for reorg.
13304
13305         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13306         advanced-notation.itely, global.itely: new files, placeholder for
13307         future reorg.
13308
13309 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13310
13311         * Documentation/user/notation.itely: revamped Polyphony section
13312         
13313 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13314
13315         * Documentation/user/lilypond-book.itely (Music fragment options):
13316         doc fontload.
13317
13318         * Documentation/user/changing-defaults.itely (Text encoding): add
13319         fontload option to utf8 include
13320
13321         * scripts/lilypond-book.py (compose_ly): add fontload option
13322
13323         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13324         force-eps-font-include option.
13325
13326         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13327         black triangle
13328
13329         * Documentation/user/invoking.itely (Editor support): remove
13330         lilypond-latex section.
13331
13332         * scripts/lilypond-latex.py (Module): remove script.
13333
13334         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13335         overwrite .log. 
13336
13337         * lily/main.cc: remove -m, --no-layout
13338
13339         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13340         to define. We don't want to override fprintf everywhere.
13341
13342 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13343
13344         * cygwin/lilypond.hint: 
13345         * cygwin/README.in: Update dependencies.
13346
13347         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13348         Bugfix: do not pollute CPPFLAGS, LIBS.
13349
13350         * cygwin/mknetrel (extras): Cross compile fixes.
13351
13352         * ttftool/util.c: 
13353         * ttftool/ttfps.c: 
13354         * ttftool/ps.c: #include libc-extension.hh
13355
13356         * flower/include/libc-extension.hh:
13357         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13358         wrapper using funopen.
13359         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13360         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13361
13362         * config.hh.in:
13363         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13364         (AC_CHECK_HEADERS): Add libio.h
13365
13366         * scripts/convert-ly.py: Uniformize, internationalize.
13367         (2.5.2): Remove fatal encoding rule.
13368         (2.5.13): Handle latin1 encoding gracefully.
13369
13370 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13371
13372         * HACKING: Fix line breaks.
13373
13374 2005-02-23  Werner Lemberg  <wl@gnu.org>
13375
13376         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13377         contains those two files.
13378
13379 2005-02-21  Werner Lemberg  <wl@gnu.org>
13380
13381         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13382         to improve overlap removal process.
13383
13384         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13385         left and right ending.  This ensures better overlapping.
13386         Update all callers.
13387         ("lineprall"): Don't use draw_gridline to get better overlapping.
13388
13389 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13390
13391         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13392
13393         * Documentation/topdocs/NEWS.tely (Top): oops.
13394
13395 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13396
13397         * HACKING: new file.
13398
13399         * input/regression/utf8.ly (portuguese): added a portuguese example
13400         to show latin1 accents.
13401
13402 2005-02-21  Pal Benko  <benkop@freestart.hu>
13403
13404         * lily/mensural-ligature-engraver.cc:
13405         * lily/mensural-ligature.cc:
13406         * lily/include/mensural-ligature.hh: new algorithm implemented
13407
13408         * scm/define-grob-properties.scm: join-left killed (add-join may
13409         be used); join-left-amount changed to join-right-amount
13410
13411 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13412
13413         * Documentation/user/notation.itely: small but urgent fix.
13414
13415 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13416
13417         * lily/duration-scheme.cc: bugfix: correct parameters to
13418         SCM_ASSERT_TYPE.
13419
13420         * THANKS: added Pal.
13421
13422         * Documentation/user/notation.itely: bugfix: unTeXified
13423         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13424         "timesig.*x/y" -> "timesig.*xy".
13425
13426 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13427         
13428         * VERSION (PACKAGE_NAME): release 2.5.12
13429
13430 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13431
13432         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13433
13434         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13435
13436         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13437
13438         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13439
13440 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13441
13442         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13443         latin1..utf-8.
13444
13445         * input/regression/stanza-number.ly:
13446         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13447
13448         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13449
13450 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13451
13452         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13453         NEWS. Refer to website for older news.  
13454
13455         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13456         .HTML. This should be done for specific servers only.
13457
13458         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13459         .ly image examples.
13460
13461         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13462         in layer 0 too.
13463
13464         * scm/define-context-properties.scm
13465         (all-user-translation-properties): add tieWaitForNote
13466
13467         * scm/define-grobs.scm (all-grob-descriptions): add
13468         Tie_column::before_line_breaking
13469
13470         * lily/tie.cc (get_column_rank): new function
13471
13472         * lily/tie-column.cc (before_line_breaking): new function.
13473         (werner_directions): take into account ties that start on
13474         different columns.  
13475
13476         * lily/score-engraver.cc (set_columns): move add_column() so we
13477         have column rank available.
13478
13479         * lily/tie.cc (get_column_rank): new function.
13480
13481         * input/regression/utf8.ly (japanese): add japanese lyrics.
13482
13483         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13484
13485         * THANKS: add Steve D
13486
13487         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13488         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13489
13490 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13491
13492         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13493         to show harmonic notes
13494         * scm/define-markup-commands.scm: in \markup-by-number
13495         "dots-dot" -> "dots.dot" to show dotted notes
13496
13497 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13498
13499         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13500
13501         * flower/memory-stream.cc (writer): new file.
13502
13503         * configure.in: add endian test.
13504
13505 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13506
13507         * Documentation/user/examples.itely: small
13508         simplification/beautification
13509
13510         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13511         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13512         notation manual.
13513
13514         * lily/mensural-ligature.cc: bugfix: another few victims of the
13515         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13516
13517         * ly/gregorian-init.ly: commit some experimental code for hi-level
13518         ligature input language lying around here for several months.
13519
13520         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13521         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13522
13523         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13524         "x-y-z"->"x.y.s-z" fixes.
13525
13526 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13527
13528         * scm/framework-pdf.scm (scm): new file
13529
13530         * lily/include/pdf.hh (class Pdf_file): new file.
13531
13532         * lily/pdf.cc (write_trailer): new file.
13533
13534 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13535
13536         * input/regression/color.ly: new file
13537
13538         * lily/stencil.cc (interpret_stencil_expression):
13539         when a color expression is encountered: save current color,
13540         process the rest of the expression, and restore previous color.
13541
13542         * lily/system.cc (get_line): check all grobs for color property and
13543         prepare the stencil scheme expressions for further processing.
13544         Fix layer-loop.
13545
13546         * scm/define-grob-properties.scm: introduce the color property.
13547
13548         * scm/output-lib.scm: color helper functions.
13549
13550         * scm/output-ps.scm: introduce setcolor/resetcolor.
13551
13552 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13553
13554         * ly/*.ly, input/regression/*.ly: Added missing \version
13555         statements in some files.
13556
13557 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13558
13559         * Documentation/user/notation.itely: minor editing.
13560
13561         * Documentation/user/converters.itely: updated convert-ly bugs.
13562
13563         * Documentation/user/lilypond-book.itely: add info about using
13564         feta characters in latex.
13565
13566 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13567
13568         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13569
13570 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13571
13572         * scm/define-grob-properties.scm (all-user-grob-properties):
13573         removed 'dashed property.
13574
13575 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13576
13577         * scm/lily.scm (define-safe-public): new macro for defining
13578         variables that can be used in --safe mode. Use it in *.scm
13579         instead of manually setting safe-objects in safe-lily.scm.
13580
13581 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13582         
13583         * lily/slur.cc: Slur-dash patch by Bertalan.
13584
13585         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13586
13587         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13588
13589 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13590
13591         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13592
13593 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13594
13595         * mf/GNUmakefile: teTeX-3.0 install fix.
13596
13597         * Cygwin patch from Bertalan.
13598
13599         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13600
13601 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13602
13603         * GNUmakefile.in: 
13604         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13605
13606         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13607         2.0.x compatibility.
13608
13609 2005-02-08  Werner Lemberg  <wl@gnu.org>
13610
13611         * mf/feta-din-code.mf: Format; clean up code.
13612         Replace `---' with `--' plus explicit path directions.
13613         (linethickness#, stafflinethickness#): Remove.
13614         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13615         ("dynamic s"): Improve shape.
13616         ("dynamic p"): Improve shape.
13617         Replace `draw' with better outline approximation.
13618         ("dynamic r"): Improve shape.
13619         Don't call `fill' and `draw' at the same time.
13620
13621 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13622
13623         * SConstruct (symlink):
13624         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13625         build fix: add enc symlink.
13626
13627         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13628
13629         Support for DESTDIR besides prefix=/foo
13630
13631         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13632
13633         * stepmake/stepmake/*.make:
13634         * */GNUmakefile:
13635         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13636
13637         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13638
13639         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13640         mawk in fontforge (date) test.
13641
13642 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13643
13644         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13645         font-family=roman. Add Luxi Sans as sans
13646
13647 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13648
13649         * Documentation/user/notation.itely: add warning about
13650         percent repeats and Voice contexts.
13651
13652         * Documentation/user/lilypond-book.itely: clarified the
13653         necessity of dvips -u arguments.
13654
13655 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13656
13657         * THANKS: Added a bunch of bug hunters.
13658
13659 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13660
13661         * scm/framework-ps.scm (output-preview-framework): bugfix.
13662
13663         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13664         o/ for chord modifier..
13665
13666         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13667
13668         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13669         Welsh Duggan). 
13670
13671 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13672
13673         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13674
13675         * ly/titling-init.ly: Do not also print intstrument in header on
13676         first page.  Do not print page number on first and only page.
13677
13678 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13679
13680         * input/regression/*.ly: remove old-relative everywhere
13681
13682         * lily/music-sequence.cc (simultaneous_relative_callback): do
13683         what-if analysis on copy, not on original. Fixes old-relative
13684         compatibility.
13685
13686         * scm/backend-library.scm (postscript->png): space before
13687         --verbose.
13688         
13689 2005-02-05  Werner Lemberg  <wl@gnu.org>
13690
13691         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13692         is defined.
13693
13694         * mf/feta-alphabet.mf: Define `staffsize#'.
13695         Include `feta-params.mf'.
13696         s/staffheight/design_size/.
13697
13698         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13699
13700         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13701
13702         * mf/feta-nummer-code.mf: Reformatted.
13703         (draw_six): Use outline intersection to avoid a self-intersecting
13704         path.
13705         ("Numeral comma"): Fix serious outline glitches.  This slightly
13706         changes the glyph shape.
13707         ("Numeral dash"): Use `draw_rounded_block'.
13708         ("Numeral dot"): Use `drawdot'.
13709         ("Numeral 1"): Assure identical tangent directions for the
13710         intersection points of paths.  The glyph shape improvement is only
13711         visible at very high magnifications.
13712         ("Numeral 2"): Use `solve' macro to make the lower right part of
13713         the glyph outline touch the x axis exactly.  This changes the
13714         glyph shape.
13715         Minor fixes for better overlap removal support.
13716         ("Numeral 4"): Make lefter corner `rounder'.
13717         ("Numeral 5"): Assure identical tangent directions for the
13718         intersection points of paths.  This improves the glyph shape at
13719         high magnifications.
13720         ("Numeral 7"): Use `solve' macro to make the upper right part of
13721         the glyph outline touch the metrics box exactly.  This changes the
13722         glyph shape.
13723         Avoid corner in the upper left part of the glyph (causing a minor
13724         shape change).
13725
13726         * mf/feta-ital-*.mf: Removed.  Unused.
13727
13728 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13729
13730         * VERSION (PATCH_LEVEL): release 2.5.11
13731
13732         * input/regression/fill-line-test.ly: new file.
13733
13734         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13735         emmentaler name, eg. emmentaler-23. 
13736
13737 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13738
13739         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13740         alignment with centered texts
13741
13742         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13743         list of paddings
13744
13745 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13746
13747         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13748
13749         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13750         of parents when translating rests. Fixes: c-chord-rest.ly 
13751
13752         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13753         dimension_callback_ member.
13754
13755         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13756         of extents.
13757
13758 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13759
13760         * all but lily/*: The grand 2004/2005 replace.
13761
13762 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13763
13764         * lily/*: add space after ,  
13765
13766         * scm/music-functions.scm (has-request-chord): don't use
13767         ly:music-name anywhere. Fixes <<\\>> notation. 
13768
13769         * scm/define-markup-commands.scm (box): use font-size for
13770         padding. Fixes boxed-rehearsal-marks.ly
13771
13772         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13773         identifier definition too, so foo = \lyrics { ...   } bar = #1
13774         doesn't complain about "bar" being LYRICS_STRING.
13775
13776         * lily/paper-def.cc (find_pango_font): new routine; Store
13777         pango_fonts in hash tab too. This is necessary for retrieving
13778         Pango_fonts::physical_font_tab() later on.
13779  
13780         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13781         crash if psname is null.
13782
13783         * lily/lily-guile.cc (ly_hash2alist): new function
13784
13785         * Documentation/user/changing-defaults.itely (Text encoding):
13786         rewrite. 
13787
13788         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13789         -> font_filename mapping.
13790
13791         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13792         ly_pango_font_physical_fonts
13793
13794         * scm/framework-ps.scm (supplies-or-needs): extract names from
13795         physical Pango_fonts.
13796
13797         * utf8.ly: new file.
13798
13799 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13800
13801         * Documentation/user/changing-defaults.itely (Page layout): add
13802         doco about systemSeparatorMarkup.
13803
13804         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13805         function.
13806         (default-page-make-stencil): insert system separators.
13807
13808         * scm/define-markup-commands.scm (hcenter): add
13809         (beam): add.
13810
13811 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13812
13813         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13814
13815 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13816
13817         * lily/main.cc: Spell backend consistently.  Sort options.
13818
13819 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13820
13821         * scripts/lilypond-book.py (Module): revert @include.
13822         
13823 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13824
13825         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13826         Bugfix: @include .tex (not .texi).  Small cleanups.
13827
13828         * stepmake/bin/add-html-footer.py (i18n): New function.
13829
13830 2005-01-31  Werner Lemberg  <wl@gnu.org>
13831
13832         * mf/feta-nummer.mf: Removed.  Unused.
13833
13834 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13835
13836         * lily/ : 2004 -> 2005 s&r
13837
13838         * scm/file-cache.scm (cached-file-contents): add file. Read each
13839         file only once.
13840
13841         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13842         now default.
13843
13844         * VERSION: release 2.5.10
13845         
13846         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13847
13848         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13849
13850         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13851         that both X and Y extents of bbox are non-nil.
13852
13853 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13854
13855         * scm/chord-name.scm (alteration->text-accidental-markup): change
13856         - to . 
13857
13858         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13859
13860         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13861
13862         * Documentation/user/invoking.itely (Invoking lilypond): add note
13863         about EPS backend.
13864
13865         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13866         files for inclusion in lilypond-book document.
13867
13868         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13869
13870         * input/tutorial/lbook-texi-test.texi: new file.
13871
13872         * scm/safe-lily.scm (safe-objects): add
13873         {begin,end}-of-line-(in)?visible as safe.
13874  
13875 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13876
13877         * Documentation/user/changing-defaults.itely: fixed example
13878         of (dynamics).
13879
13880 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13881
13882         * lily/main.cc: fix info about -o=FILE.
13883
13884 2005-01-29  Werner Lemberg  <wl@gnu.org>
13885
13886         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13887         construction to assure smooth transition from straight to curved
13888         lines.
13889
13890 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13891
13892         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13893         stencils.
13894
13895         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13896         translate to top of page. Fixes alignment problems of
13897         lilypond-generated EPS files.
13898
13899 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13900
13901         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13902         crescendo-end as well, since Decrescendo maybe ended with Stop
13903         Crescendo.). Fixes: partcombine-diminuendo.ly
13904
13905         * scm/script.scm (default-script-alist): swap portato symbols.
13906
13907         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13908
13909         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13910         ly:outputter-port. New function.
13911
13912         * scm/framework-ps.scm (output-classic-framework): dump a
13913         -systems.texi too
13914         (output-classic-framework): dump multiple systems on an "infinite"
13915         page EPS including fonts. 
13916
13917         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13918         .eps files for both texi and tex formats. Use PNG coming from
13919         lilypond.
13920         
13921 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13922
13923         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13924
13925         * scripts/lilypond-latex.py: fix info about -o=FILE.
13926
13927 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13928
13929         * ly/generate-embedded-cff.ly: write .cff.ps files.
13930
13931         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13932
13933         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13934         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13935
13936 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13937
13938         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13939
13940 2005-01-28  Werner Lemberg  <wl@gnu.org>
13941
13942         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13943         macros.
13944         (draw_bulb): Improved.
13945
13946         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13947         metapost bug.
13948         (draw_pedal_P): Use soft_end_penstroke.
13949         (draw_pedal_d): Use soft_start_penstroke.
13950
13951         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13952         path.
13953         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13954         doesn't change the glyph shape.
13955
13956         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13957         changing the shape) to avoid fontforge warnings.
13958
13959         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13960         soft_end_penstroke and fix glyph shape.
13961
13962 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13963
13964         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13965
13966 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13967
13968         * scm/define-markup-commands.scm (line): filter out empty stencils
13969         from line command.
13970
13971         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13972         amount.
13973
13974 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13975
13976         * Documentation/user/notation.itely: added info about what
13977         \voiceFoo does.  Also rewrote warning about marks at
13978         a line break.
13979
13980         * Documentation/user/changing-defaults.itely: added info
13981         about putting dynamics in parenthesis and brackets.
13982
13983 2005-01-27  Werner Lemberg  <wl@gnu.org>
13984
13985         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13986
13987 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13988
13989         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13990         portato-direction.ly
13991
13992         * lily/beam.cc (consider_auto_knees): add beam height to
13993         threshold. Fixes: knee-multiple-beam.ly
13994
13995         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13996         pedal line spanners. Fixes: instrument-center-pedal.ly
13997
13998         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13999         if encountering barline. Fixes: auto-beam-repeat.ly
14000
14001 2005-01-26  Werner Lemberg  <wl@gnu.org>
14002
14003         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
14004         overlapping.
14005
14006         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
14007         with inflections for the 1/2 sharp glyph.
14008
14009         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
14010         connection between `t' and `r'.
14011         Unify bulb with the rest of `r' to avoid grazing outlines which
14012         confuses the overlap removal algorithm of fontforge.
14013
14014         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
14015         inflections.
14016         (draw_cross): Fix shape to have uniform thickness in corners.
14017
14018         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
14019         to avoid an uneven number of self-intersections; this confuses
14020         fontforge.
14021         Fix a slight bug in the shape at left bottom (which is visible only
14022         at high magnifications).
14023         `Center' the stem horizontally to avoid overlapping.
14024
14025 2005-01-24  Werner Lemberg  <wl@gnu.org>
14026
14027         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
14028         to `asis'.
14029         (fet_begingroup): Save group name in string `feta_group'.
14030         (fet_endgroup): Updated.
14031         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
14032
14033         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
14034
14035         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
14036         in metapost.
14037
14038 2005-01-24  Graham Percival  <gperlist@shaw.ca>
14039
14040         * Documentation/user/notation.itely: really minor editing.
14041
14042 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14043
14044         * Documentation/user/examples.itely: minor editing.
14045
14046         * Documentation/user/changing-defaults.itely: minor editing.
14047
14048         * Documentation/user/notation.itely: clarified info on polyphony
14049         and \addlyrics.
14050
14051 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14052
14053         * scm/output-gnome.scm: 
14054         * scm/output-svg.scm:
14055         * scm/lily-library.scm (font-name-style): Update font name
14056         kludging for fontconfig use.
14057
14058 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
14059
14060         * scm/define-markup-commands.scm: Document right-align and
14061         larger markup commands. Remove "TODO" from the topmost comment
14062         "each markup function should have a doc string." More consistent
14063         use of new-lines.
14064
14065 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14066
14067         * Documentation/user/changing-defaults: removed info about
14068         copyright symbol, since it's likely to change soon.
14069         Added info about betweensystemspace.
14070
14071         * Documentation/user/notation.itely: minor fixes.
14072
14073         * Documentation/user/lilypond.tely,
14074         Documentation/user/music-glossary.tely: changed copyright
14075         date to 2005 instead of 2004.
14076
14077         * input/test/volta-chord-names.ly: added old example back.
14078
14079 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14080
14081         * mf/feta-beugel.mf: use design size 20 (not 15).
14082
14083         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14084         change name to aybabtu completely
14085
14086 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14087
14088         * buildscripts/gen-emmentaler-scripts.py (outdir): add
14089         design_size to fontname
14090
14091 2005-01-19  Werner Lemberg  <wl@gnu.org>
14092
14093         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14094         mf/feta-schrift.mf: s/p/pat/ if a path variable.
14095
14096         * mf/feta-autometric.mf (set_char_box): Add code which emits
14097         specials for mf2pt1 if run with metapost.
14098         (to_bp): New macro for mf2pt1.
14099
14100 2005-01-18  Graham Percival  <gperlist@shaw.ca>
14101
14102         * Documentation/user/changing-defaults: added info on
14103         creating a copyright symbol.
14104
14105 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14106
14107         * VERSION: release 2.5.9
14108         
14109 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14110
14111         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14112
14113         * Documentation/user/notation.itely: Document
14114         score-override-auto-beam-setting Fix documentation for
14115         revert-auto-beam-setting.
14116
14117 2005-01-18  Werner Lemberg  <wl@gnu.org>
14118
14119         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14120         (procset): New function to define a procset resource.
14121         (ps-embed-pfa): New function to define a font resource.
14122         (setup): New function to define a `Setup' environment.
14123         (preamble): Use new functions.
14124
14125         * ps/lilypond.defs (init-lilypond-parameters): New function to
14126         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14127
14128 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14129
14130         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14131
14132 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14133
14134         * scm/define-markup-commands.scm: Change number->markletter-string
14135         to take two arguments (vector number). Add number->mark-alphabet-vector
14136         and markalphabet markup command.
14137
14138         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14139         format-mark-alphabet, format-mark-box-barnumbers and
14140         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14141
14142 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14143
14144         * Documentation/user/examples.itely: add SATB automatic piano
14145         reduction template.
14146
14147         * Documentation/user/notation.itely: added info about changing
14148         partcombine texts.  Also adds examples of alternate lyrics.
14149
14150         * Documentation/user/changing-defaults.itely: added warning
14151         about \RemoveEmptyStaffContext overriding previous changes.
14152
14153 2005-01-17  Werner Lemberg  <wl@gnu.org>
14154
14155         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14156         feta-alphabet*.
14157
14158 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14159
14160         * python/lilylib.py (make_ps_images): don't do final showpage for
14161         multi-page documents.
14162         
14163         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14164
14165 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14166
14167         * Documentation/user/lilypond.tely: changed order of appendices;
14168         unified index should be last.
14169
14170         * Documentation/user/notation.itely: add example of key signatures
14171         and info about Staff.printKeyCancellation.
14172
14173 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14174
14175         * lily/include/repeated-music.hh (class Repeated_music): change
14176         into "namespace" class.
14177
14178         * lily/event.cc: remove Key_change_event.
14179
14180         * lily/include/transposed-music.hh (class Transposed_music): remove.
14181
14182         * lily/transposed-music.cc: remove
14183
14184         * lily/include/relative-music.hh: remove.
14185
14186         * lily/include/music-sequence.hh (struct Music_sequence): change
14187         into "namespace" class.
14188
14189         * lily/untransposable-music.cc (Module): remove
14190
14191         * lily/include/un-relativable-music.hh (Module): remove
14192
14193         * lily/include/untransposable-music.hh (Module): remove
14194
14195         * lily/include/music-list.hh (Module): remove file
14196
14197         * lily/un-relativable-music.cc: remove file.
14198
14199 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14200
14201         * lily/parser.yy: Compile fix.
14202
14203 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14204
14205         * lily/include/music.hh (class Music): unvirtualize transpose().
14206
14207         * lily/sequential-music.cc: remove file.
14208
14209         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14210
14211         * lily/slur-scoring.cc (get_best_curve): only switch on
14212         DEBUG_SLUR_SCORING for non NDEBUG builds.
14213
14214         * lily/include/music.hh (class Music): replace Music::start_mom()
14215         by start-callback property
14216
14217         * lily/include/grace-music.hh: remove file. 
14218
14219         * lily/stem.cc (height): robustness fix.
14220
14221         * lily/time-scaled-music.cc: remove file.
14222
14223         * lily/include/music.hh (class Music): include SCM init argument.
14224         (class Music): replace Music::get_length() virtual by
14225         length-callback property everywhere.
14226
14227         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14228
14229         * mf/GNUmakefile: don't install *list.ly
14230
14231 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14232
14233         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14234
14235 2005-01-12  Werner Lemberg  <wl@gnu.org>
14236
14237         This patch addresses the following problems in the feta sources
14238         files which contribute to the fetaXX fonts.
14239
14240         . Many fixes for rasterization at low resolutions (consistent use of
14241           `vround' and `hround', integer shift values for paths, applying
14242           `eps' for mirrored paths, use of `define_whole_pixels' and
14243           friends, etc.) -- while this probably looks like a waste of time
14244           it has revealed deficiencies in some glyph shapes.  See comment at
14245           the end of feta-params.mf how vertical symmetry is achieved.
14246
14247         . The `---' operator has been replaced everywhere with `--'; this
14248           both improves and considerably reduces the font size after
14249           conversion with mf2pt1.
14250
14251         These change aren't explicitly mentioned below since virtually all
14252         glyphs are affected.
14253
14254         Other notable differences:
14255
14256         . Glyphs from feta-accordion.mf now have charboxes around the
14257           outline.
14258
14259         . Fixed incorrect charbox for `accDot'.
14260
14261         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14262
14263         . Fixed position of the bow in the `upprall' glyph and its siblings.
14264
14265         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14266           dependent on the staff line thickness to avoid touching the middle
14267           staff line at smaller sizes.
14268
14269         . Largely extended output for feta-testXX: Where useful, glyphs
14270         are shown both between and on staff lines.
14271
14272
14273         * mf/feta-params.mf (staff_space_rounded,
14274         stafflinethickness_rounded, linethickness_rounded,
14275         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14276         Update all code which uses them where appropriate.
14277         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14278         New variables used to control rasterization at low resolutions.  Set
14279         to zero if feta code is processed with metapost.
14280
14281         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14282         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14283         (flare_path): Updated.
14284         Make it work with `filldraw' (but only circular pens).
14285         (hfloor, vfloor, hceiling, vceiling): New macros.
14286
14287         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14288         Use `draw' again in mf mode to have good pixel dropout control.
14289         Fix intersection points of horizontal lines with circle.
14290         ("accDot"): Fix parameters for set_char_box.
14291         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14292         control.
14293
14294         * mf/feta-banier.mf: Updated.
14295
14296         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14297         testing.
14298         (undraw_inside_ellipse): Remove `center' argument.  Update all
14299         callers.
14300         (draw_brevis): New macro, called by "Brevis notehead".
14301         (draw_whole_triangle_head): New macro, called by "Whole
14302         trianglehead".
14303         (draw_small_triangle_head): Use `filldraw'.
14304
14305         * mf/feta-eindelijk.mf: Remove useless global group.
14306         Updated.
14307
14308         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14309         `filldraw'.
14310
14311         * mf/feta-pendaal.mf: Updated.
14312
14313         * mf/feta-puntje.mf: Updated.
14314
14315         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14316         less points.
14317         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14318         dropout control.
14319         ("Varied Coda"): Use `draw_block'.
14320         (draw_comma): Fix typo.
14321         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14322         pixel dropout control.
14323
14324         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14325         position of bow.
14326
14327         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14328         sizes.
14329
14330         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14331         testing.
14332         (draw_meta_sharp): Much simplified.
14333         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14334
14335         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14336
14337 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14338
14339         * Documentation/user/notation.itely (Ancient rests): Fix typo
14340         (thanks Anthony)
14341
14342 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14343
14344         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14345
14346         * lily/main.cc (setup_paths): Add cff.
14347
14348         * mf/GNUmakefile (foe): Include actual target %.cff.
14349         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14350
14351 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14352
14353         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14354         suffix for main_input_b_.
14355
14356         * scm/music-functions.scm (toplevel-music-functions):
14357         precompute music lengths for music expressions.  
14358
14359 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14360
14361         * lily/include/input.hh (class Input): new `end_' slot for end of
14362         input. Renamed defined_str0_ to start_.
14363
14364         * lily/input.cc (Input): Add Input::Input (Input const &) and
14365         remove Input::Input (Source_file*, char const *). Use the new
14366         slots.
14367         (set_location): method used by bison to propagate input
14368         locations (YYLLOC_DEFAULT).
14369         (end_line_number, end_column_number, step_forward): new methods
14370         
14371         * lily/input-scheme.cc (ly:input-both-locations): new function,
14372         similar to ly:input-location, but also return the end line and
14373         column.
14374
14375         * lily/include/includable-lexer.hh: 
14376         * lily/includable-lexer.cc: 
14377         * lily/include/lily-lexer.hh (class Lily_lexer): 
14378         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14379         Includable_lexer to Lily_lexer, in order to update lexloc (the
14380         yylloc), a new slot of Lily_lexer.
14381         (here_input, LexerError): simplify by using the lexloc slot (aka
14382         yylloc)
14383
14384         * lily/lexer.ll: #define yylloc to use input locations (it may
14385         be useless here?). Fixed the #embedded_scm rule (step the location
14386         forward in order to skip the sharp sign before parsing the scheme
14387         expression)
14388
14389         * lily/include/lily-parser.hh (class Lily_parser): 
14390         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14391         here_input()
14392         (parser_error): overload for more precise locations of errors.
14393
14394         * lily/parser.yy (YYLTYPE): set location type to Input
14395         (YYLLOC_DEFAULT): use Input::set_location()
14396         (yylex): add the YYLTYPE* location parameter.
14397         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14398         Give an Input parameter to THIS->parser-error() for more accurate
14399         messages.
14400
14401 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14402
14403         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14404
14405         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14406         on BEAMQUANTING for non-NDEBUG builds.
14407
14408         * lily/stem.cc (head_count): performance: avoid String::String()
14409         inside oft called function.
14410
14411 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14412
14413         * Documentation/user/examles.itely: attempted fix for broken
14414         string quartet template.
14415
14416         * Documentation/user/notation.itely: remove unnecessary broken
14417         link.
14418
14419 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14420
14421         * VERSION (PACKAGE_NAME): release 2.5.7
14422
14423 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14424
14425         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14426         mf-nowin for teTeX-3.0.  Backportme.
14427
14428         * scm/output-svg.scm (utf8-string): New function.
14429
14430         * scm/output-gnome.scm (utf8-string): New function.
14431         (otf-name-mangling): Remove.
14432
14433         * lily/pango-font.cc (Pango_font): Use font string iso font
14434         filename for utf8-text.
14435
14436         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14437         name.
14438
14439 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14440
14441         * Documentation/user/notation.itely: add info about
14442         Staff.extraNatural = ##f in Pitches section.  Also
14443         fixed some minor issues in the Vocal music section.
14444
14445 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14446
14447         * scm/output-ps.scm (white-text): comment out Helvetica font,
14448         which is broken for my GS install.
14449
14450         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14451         which provides a tighter bbox.
14452
14453         * scm/define-grobs.scm (all-grob-descriptions): remove all
14454         extra-offsets from definitions.
14455
14456 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14457
14458         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14459         add tuning for 4-string bass and some common 4/5-string banjo
14460         tunings.  New function (four-string-banjo) turns a 5-string tuning
14461         into a 4-string tuning.  New function
14462         (fret-number-tablature-format-banjo) computes correct fret numbers
14463         on 5-string banjos.
14464
14465         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14466         Add beam correction to TabVoice.
14467
14468         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14469         using bold font; makes tabs more readable.
14470
14471 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14472
14473         * lily/font-select.cc (get_font_by_design_size): don't make
14474         Modified_font_metric; this causes trouble, since we don't know the
14475         font magnification from inside Pango_font::text_stencil()
14476
14477         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14478
14479         * Documentation/user/notation.itely (The Lyrics context): comment out
14480         broken {Small ensembles} link.
14481
14482         * scm/framework-svg.scm (output-framework): change calling convention.
14483
14484         * lily/object-key-dumper-scheme.cc: new file.
14485
14486         * lily/object-key-undumper-scheme.cc: new file.
14487
14488         * lily/tweak-registration-scheme.cc: new file.
14489
14490         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14491
14492         * Documentation/user/examples.itely (String quartet): uncomment
14493         broken example.
14494
14495         * lily/font-config.cc: new file.
14496
14497 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14498
14499         * scm/output-svg.scm: 
14500         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14501
14502         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14503
14504 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14505
14506         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14507         Add headers.
14508
14509         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14510
14511 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14512
14513         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14514
14515         * lily/include/main.hh: lose _b hungarian suffixes for global
14516         variables.
14517
14518         * lily/include/lily-guile-macros.hh: new file.
14519
14520         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14521
14522         * lily/general-scheme.cc: new file. 
14523
14524         * lily/font-select.cc (get_font_by_design_size): retrieve
14525         PangoFont for (designsize . "pango-descr") entries.
14526
14527         * lily/lily-parser-scheme.cc: new file.
14528
14529         * lily/output-def-scheme.cc: new file.
14530
14531         * lily/paper-book-scheme.cc: new file.
14532
14533         * lily/duration-scheme.cc (LY_DEFINE): new file.
14534
14535         * lily/pitch-scheme.cc:  new file.
14536
14537         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14538
14539 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14540
14541         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14542
14543 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14544
14545         * Documentation/user/notation.itely: minor editing.
14546
14547         * Documentation/user/changing-defaults: minor editing.
14548
14549         * Documentation/user/examples.itely: add template for
14550         string quartet part extraction; demonstrates tag.
14551
14552 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14553
14554         * Documentation/user/notation.itely: documents
14555         format-mark-box-letters and format-mark-box-numbers
14556
14557         * scm/define-context-properties.scm: change comment.
14558
14559 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14560
14561         * scm/framework-ps.scm (output-classic-framework): new function:
14562         dump systems as separate .eps files (without fonts) and write a
14563         single collecting .tex file.
14564
14565 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14566
14567         * Documentation/user/notation.itely (Setting simple songs):
14568         Correct several errors in the equivalent formulation of
14569         \addlyrics. 
14570         (The Lyrics context): Corrected link to the SATB example.
14571
14572 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14573
14574         * scm/lily.scm (completize-formats): new function
14575         (postprocess-output): new function
14576
14577         * lily/paper-book.cc (classic_output): change calling
14578         convention. Give basename as first argument. 
14579         remove Paper_book::post_processing().
14580
14581         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14582
14583 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14584
14585         * lily/paper-outputter.cc (LY_DEFINE): new function
14586         ly:outputter-close.
14587
14588         * lily/main.cc: change --format,-f to --backend,-b
14589
14590         * lily/include/main.hh: rename format to backend.
14591
14592         * scm/translation-functions.scm (format-mark-box-numbers): add.
14593         patch by Erlend Aasland
14594
14595 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14596
14597         * lily/pango-font.cc (text_stencil): dump string as
14598         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14599
14600 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14601
14602         * configure.in (gui_b): Remove handy developer-only
14603         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14604         CVS source installations (but break other non-default but correct
14605         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14606
14607         * SConstruct: 
14608         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14609         compatibility (backportme).
14610
14611         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14612
14613 2005-01-03  Werner Lemberg  <wl@gnu.org>
14614
14615         Prepare glyph shapes for mf2pt1 conversion.
14616
14617         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14618         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14619         `penstroke'.
14620         (accDot): Use `drawdot'.
14621         (accBayanbase): Replace `draw' with `draw_gridline'.
14622         (print_penpos): Moved to feta-macros.mf.
14623         (accOldEE): Replace `filldraw' with `penstroke'.
14624         Replace `draw' with `penstroke' and `drawdot'.
14625
14626         * mf/feta-banier.mf: Code clean-up.
14627         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14628         `fill'.
14629
14630         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14631
14632         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14633         paremeter to control drawing of labels.  Update all callers.
14634
14635         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14636         (new_bulb): Return a bulb as a single path.  To do that, it now
14637         takes some more parameters.  Updated all callers.
14638         (draw_gclef): Major clean-up.  `draw' has been replaced with
14639         `penstroke', unnecessary outlines have been removed.
14640         Remove (unused) gnome-canvas code.
14641
14642         * mf/feta-macros.mf (print_penpos): New macro (from
14643         feta-accordion.mf).
14644         Other minor fixes.
14645
14646         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14647         ("Pedal dot"): Use `drawdot'.
14648         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14649         all callers.
14650         Fix shape at top.
14651         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14652         all callers.
14653         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14654         all callers.
14655         Revert drawing direction.
14656
14657         * mf/feta-schrift.mf (draw_fermata): Use single path.
14658         (draw_short_fermata): Replace `filldraw' with `fill'.
14659         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14660         `draw_rounded_block' with a single path.
14661         ("Thumb"): Draw full circle instead of mirroring segments.
14662         (draw_accent): New macro.
14663         ("> accent", "espr"): Use it.
14664         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14665         ("open (unstopped)"): Draw full circle instead of mirroring
14666         segments.
14667         (draw_vee): Removed.
14668         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14669         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14670         path.
14671         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14672         partial pieces drawn with `fill' -- these do still overlap with the
14673         stem of the `t' but just once, not multiple times so that fontforge
14674         can handle it gracefully.
14675         Change other parts of the glyph so that fontforge's overlapping
14676         algorithm reliably works.
14677         (draw_heel): Replace `draw' with `fill'.
14678         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14679         ("Flageolet"): Replace `draw' with `penstroke'.
14680         ("Segno"): Replace `filldraw' with `penstroke'.
14681         Replace `draw' with `drawdot'.
14682         ("Coda"): Replace `fill' with `penstroke', using a single path.
14683         ("Varied Coda"): Use less overlapping paths.
14684         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14685         single path.
14686
14687         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14688         group to better control the `labels' command.
14689         Rename argument to `offset' and use it actually.  Update all
14690         callers.
14691         Replace `filldraw' with `fill'.
14692         ("mordent", "prallmordent", "upmordent", "downmordent",
14693         "lineprall"): Replace `draw' with `draw_gridline'.
14694         ("upprall", "downprall"): Replace `draw' with `fill'.
14695
14696         * mf/feta-timesig.mf: Formatting.
14697
14698         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14699         to...
14700         ("Flat"): Here.
14701         (draw_paren): Move code to draw labels to...
14702         ("Right Parenthesis"): Here.
14703
14704 2005-01-02  Graham Percival <gperlist@shaw.ca>
14705
14706         * Documentation/user/notation.itely: add example of \setTextDecresc
14707         and \setTextDim.
14708
14709 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14710
14711         * scm/define-markup-commands.scm :  fix glyph-strings of
14712         accidentals and \note-by-number
14713
14714 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14715
14716         * VERSION: 2.5.6 released.
14717         
14718         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14719
14720         * input/regression/new-markup-scheme.ly: oops. font-family=music
14721         -> font-encoding fetaMusic.  
14722
14723         * lily/main.cc: put default to PS.
14724
14725         * lily/tfm.cc: idem.
14726
14727         * lily/afm.cc: idem.
14728
14729         * lily/include/modified-font-metric.hh (struct
14730         Modified_font_metric): remove coding_scheme() method.
14731
14732         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14733
14734         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14735
14736         * input/les-nereides.ly: convert to utf8
14737
14738         * lily/modified-font-metric.cc (text_dimension): idem.
14739
14740         * lily/parser.yy (TODO): idem.
14741
14742         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14743
14744         * lily/lexer.ll: remove encoding
14745
14746         * scm/framework-ps.scm (output-variables): separately scale the
14747         page to mm 
14748
14749         * lily/pango-font.cc (Pango_font): fix scaling.
14750
14751         * lily/font-metric.cc (design_size): design_size returns a
14752         dimension now as well.
14753
14754 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14755
14756         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14757         brace generation. 
14758
14759         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14760
14761 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14762
14763         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14764         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14765
14766 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14767
14768         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14769         in first run as well.
14770
14771         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14772         dimension less points (ie. 12 = 12 point)
14773
14774         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14775
14776         * lily/all-font-metrics.cc (find_pango_font): set description_
14777
14778         * lily/pango-font.cc (text_stencil): export size as well.
14779         (text_stencil): fix scaling and extents box.
14780
14781 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14782
14783         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14784
14785         * Documentation/user/invoking.itely (Invoking lilypond): document
14786         texstr
14787
14788         * scripts/convert-ly.py (conv): add ancient rules.
14789
14790         * scm/clef.scm (c0-pitch-alist): replace - with .
14791
14792         * scripts/lilypond-book.py (process_snippets): add texstr support.
14793
14794         * scm/framework-texstr.scm (header): change extension to .textmetrics
14795
14796         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14797         -f tex.
14798
14799         * lily/text-metrics.cc: new file.
14800         (try_load_text_metrics): new function
14801
14802         * lily/include/text-metrics.hh: new file.
14803
14804 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14805
14806         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14807         ly_scheme_function to ly_lily_module_constant.
14808
14809         * lily/modified-font-metric.cc (text_dimension): try
14810         lookup_tex_text_dimension() first.
14811
14812         * lily/tfm.cc: new function ly:load-text-dimensions
14813
14814 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14815
14816         * scm/output-texstr.scm (text): use \lilygetmetrics
14817
14818         * scm/framework-texstr.scm (header): dump in new format.
14819
14820         * tex/lilypond-tex-metrics: new file.
14821         
14822 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14823
14824         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14825         mapping.
14826         (index_to_charcode): New method.
14827
14828         * scm/output-ps.scm (glyph-string): 
14829         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14830
14831 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14832
14833         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14834         implement fully, need FONT to get to charcode.
14835
14836         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14837
14838         * scm: Cleanups.
14839
14840         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14841         {Tunable context properties},
14842         {All layout objects},
14843         {Music definitions}.
14844
14845 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14846
14847         * VERSION: release 2.5.5
14848         
14849         * lily/main.cc: use TeX as default output format.
14850
14851         * flower/file-path.cc (find): try to open directly as well, so we
14852         find absolute path files. 
14853
14854         * lily/pango-select.cc: new file.
14855
14856         * scm/framework-ps.scm: remove all encoding code. 
14857         load pfb/pfa for PangoFont too.
14858         
14859         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14860
14861 2004-12-22  Werner Lemberg  <wl@gnu.org>
14862
14863         Prepare glyph shapes for mf2pt1 conversion.
14864
14865         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14866
14867         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14868         (define_triangle_shape): Use it to replace `draw' with `fill' and
14869         `unfill'.  Update all callers.
14870         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14871         (draw_cross): Ditto.
14872         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14873         Use penrazor for better conversion with mf2pt1.
14874         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14875         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14876         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14877         draw_la_head, draw_ti_head): Replace `filldraw' with
14878         `fill'.  Update all callers.
14879
14880 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14881
14882         * lily/paper-book.cc (output): revert: only allow a single output
14883         format.
14884
14885         * lily/include/pango-font.hh: new file.
14886
14887         * lily/pango-font.cc: new file.
14888
14889         * lily/font-metric.cc (text_stencil): new routine
14890
14891         * lily/all-font-metrics.cc (find_pango_font): new routine.
14892
14893         * lily/include/font-metric.hh (struct Font_metric): add
14894         text_stencil()
14895
14896         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14897
14898 2004-12-22  Werner Lemberg  <wl@gnu.org>
14899
14900         Prepare glyph shapes for mf2pt1 conversion.
14901
14902         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14903
14904         * mf/feta-toevallig.mf: Formatting.
14905         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14906         ("Natural"): Fix paths to allow better postprocessing.
14907         (draw_meta_flat): Use `z3l' as additional point in path to get
14908         better conversion with mf2pt1.
14909         Other minor cleanups.
14910         ("3/4 Flat"): Add auxiliary points and modify path to replace
14911         `draw' with `fill'.
14912         ("Double Sharp"): Mirror path segments instead of picture elements
14913         to get a single outline.
14914         Modify path to replace `filldraw' with `fill'.
14915
14916 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14917
14918         * input/test/unfold-all-repeats.ly: added file back.
14919
14920         * Documentation/user/notation.itely,
14921         Documentation/user/programming-interface.itely
14922         Documentation/user/changing-defaults.itely: fixed misc broken
14923         links to input/test/ files.
14924
14925 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14926
14927         * tex/texinfo.tex: Update.  We should not be distributing this,
14928         but since we do, use latest version.
14929
14930         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14931         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14932         macros for feta glyphs.
14933
14934 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14935
14936         * Documentation/user/changing-defaults.itely: fix index for set.
14937
14938         * Documentation/user/converters.itely: added convert-ly bugs list
14939         from CVS.
14940
14941 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14942
14943         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14944         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14945         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14946         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14947
14948         * mf/GNUmakefile (pfa_warning): Use less broken check.
14949
14950         * python/lilylib.py (setup_environment): Remove cruft from
14951         GS_FONTPATH.
14952
14953         * configure.in: Bump mftrace requirement to 1.1.1.
14954
14955 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14956
14957         * scm/output-svg.scm (beam): Use polygon.
14958
14959         * scm/lily-library.scm: Bugfix.
14960
14961         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14962
14963         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14964
14965 2004-12-19  Werner Lemberg  <wl@gnu.org>
14966
14967         Prepare glyph shapes for mf2pt1 conversion.
14968
14969         * mf/feta-eindelijk: Some formatting.
14970         (multi_rest_x, multi_beam_height): Removed.  Unused.
14971         ("Quarter rest"): Use `intersectiontimes' to create a single
14972         outline.
14973         (rest_crook): Removed.  Unused.
14974         (draw_rest_bulb): Return path (without filling).  Update callers.
14975         Simplified.
14976         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14977         "128th rest"): Simplify `pat'.
14978         Create single outline.
14979
14980 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14981
14982         * mf/GNUmakefile (ALL_GEN_FILES):
14983         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14984
14985         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14986         function.
14987
14988 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14989
14990         * scm/output-texstr.scm (placebox): add routine
14991
14992         * VERSION (PACKAGE_NAME): release 2.5.4
14993
14994         * scm/framework-texstr.scm (output-framework): new file.  
14995
14996         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14997         processing.
14998
14999         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
15000
15001         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
15002         rule.
15003
15004         * configure.in (gui_b): bump mftrace requirement to 1.1.0
15005
15006         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
15007
15008         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
15009
15010 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15011
15012         * scm/framework-svg.scm (dump-page): Implement landscape.
15013
15014 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15015
15016         * lily/main.cc (setup_paths): Add svg to search path.
15017
15018         * scm/output-svg.scm:
15019         * scm/framework-svg.scm: Add pageSet.  Update.
15020         (dump-fonts): New function.
15021         (output-framework): Use it.
15022
15023         * mf/GNUmakefile: 
15024         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
15025
15026 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15027
15028         * tex/lilyponddefs.tex: comment out new ifpdf code.
15029
15030 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15031
15032         * GNUmakefile.in: 
15033         * SConstruct (symlink): Replace afm by otf.
15034
15035         * scm/framework-gnome.scm (gnome-main): Remove invocation of
15036         ly:pango-add-afm-decoder.
15037
15038         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
15039
15040 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15041
15042         * scm/output-ps.scm (new-text): don't access t glyph for getting
15043         space dimension.
15044
15045         * ly/init.ly: warn about \version
15046
15047         * lily/lexer.ll: set version-seen?
15048
15049 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15050
15051         * scm/output-svg.scm (string->entities): Update.
15052
15053 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15054
15055         * lily/main.cc (setup_paths): replace afm by otf for path. 
15056
15057         * lily/pangofc-afm-decoder.cc: remove.
15058
15059         * lily/include/pangofc-afm-decoder.hh: remove.
15060
15061         * scm/framework-scm.scm (output-framework): new file.
15062
15063         * mf/GNUmakefile: remove SAUTER_FONTS.
15064         remove SVG/sodipodi hacks.
15065
15066         * scm/lily-library.scm (stderr): move stderr.
15067
15068         * mf/GNUmakefile: remove AFM support.
15069
15070         * buildscripts/mf-to-table.py (base): remove AFM support.
15071
15072         * lily/open-type-font.cc (design_size): use design_size
15073
15074 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
15075
15076         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15077
15078 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15079
15080         * mf/GNUmakefile: Generate combined aybabtu info.
15081         * mf/aybabtu.pe.in (i): Load it.
15082
15083         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15084         are not symbols.
15085
15086         * lily/include/open-type-font.hh (count): New method.
15087
15088         * mf/aybabtu.pe.in: Typo.
15089
15090         * Documentation/user/out/lilypond-internals.nexi (Scheme
15091         functions): Typo.
15092
15093         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15094
15095 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15096
15097         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15098         subfonts.
15099
15100         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15101
15102         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15103         (tex-font-command-raw): new function.
15104
15105         * lily/include/virtual-font-metric.hh (Module): remove file
15106
15107         * lily/virtual-font-metric.cc (Module): remove file.
15108         
15109
15110         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15111         (get_indexed_char): read bbox from lily table if present.
15112
15113 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15114
15115         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15116         aybabtu.subfonts
15117
15118         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15119         global glyphname. Enables more than 64 glyphs in the OTF.
15120
15121 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15122
15123         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15124         braces.
15125
15126         * lily/open-type-font.cc (design_size): Use 12 as default for
15127         design size.
15128
15129         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15130
15131         * mf/GNUmakefile: Generate aybabtu.
15132
15133         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15134
15135 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15136
15137         * scm/lily-library.scm (char->unicode-index): Remove.
15138
15139         * scm/output-gnome.scm (text): Bugfix for plain string input.
15140         Updates.
15141
15142         * scm/output-svg.scm (svg-font): Add weight to font selection.
15143
15144 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15145
15146         * Documentation/topdocs/INSTALL.texi (Top): Point to
15147         buildscripts/out/clean-fonts instead of
15148         buildscripts/clean-fonts.sh. 
15149
15150 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15151
15152         * input/regression/figured-bass.ly: attempt to clarify text.
15153
15154         * Documentation/user/notation.tely: add cindex for tag, attempt to
15155         add figured bass example.
15156
15157         * Documentation/user/changing-defaults: basic editing.
15158
15159 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15160
15161         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15162
15163         * lily/open-type-font.cc (LY_DEFINE): new function
15164         ly:font-sub-fonts
15165
15166         * lily/include/font-metric.hh (struct Font_metric): new method
15167         sub_fonts()
15168
15169         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15170         . with - in add.stem.
15171         
15172 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15173
15174         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15175         and fetaDynamic.
15176
15177         * lily/rest.cc (glyph_name): Change - to . .
15178
15179         * scm/output-gnome.scm (text): Hello world, again.
15180
15181         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15182
15183         * lily/modified-font-metric.cc (index_to_charcode): New method.
15184
15185         * lily/include/font-metric.hh (index_to_charcode): New function.
15186
15187         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15188         new function.
15189         (ly:font-glyph-to-index): Remove.
15190
15191 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15192
15193         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15194
15195         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15196
15197         * lily/open-type-font.cc (load_scheme_table): new function
15198
15199         * lily/dots.cc (print): replace - 
15200
15201         * lily/open-type-font.cc (attachment_point): new function.
15202         (load_table): read LILC table
15203
15204         * buildscripts/gen-bigcheese-scripts.py (Module): new
15205         file. Generate FF scripts.
15206
15207         * mf/feta-din10.mf: idem.
15208
15209         * mf/feta-nummer10.mf: remove mf files.
15210
15211         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15212
15213 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15214
15215         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15216
15217         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15218         compatibility.
15219
15220 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15221
15222         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15223         design-size and units_per_EM.
15224
15225         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15226
15227 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15228
15229         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15230         does not crash fontforge.
15231
15232         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15233         PUA.
15234
15235 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15236
15237         * scm/framework-ps.scm (ps-embed-cff): new function.
15238
15239         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15240
15241 2004-12-12  Werner Lemberg  <wl@gnu.org>
15242
15243         * mf/bigcheese.pe.in: Add PUA mapping.
15244         Don't create Type 42 but bare CFF font.
15245
15246 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15247
15248         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15249         within canvas boundaries.
15250
15251         * mf/merge.pe.in: Set font names, version, license GPL.
15252
15253         * make/substitute.make: Add FONTFORGE.
15254
15255         * config.make.in (FONTFORGE): Add.
15256
15257         * configure.in (gui_b): Use PATH_PROG for fontforge.
15258
15259 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15260
15261         * scm/define-markup-commands.scm: add baseline-skip to info
15262         about \column.
15263
15264 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15265
15266         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15267
15268         * scm/output-gnome.scm (named-glyph): Use it.
15269
15270         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15271
15272         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15273         (upper_string, lower_string, reverse_string): Remove.
15274
15275         * configure.in (fontforge): Reinstate version check.
15276
15277         * ly/engraver-init.ly: Fix clef glyph names.
15278
15279         * lily/time-signature.cc (special_time_signature): Fix fraction
15280         glyph names.
15281
15282 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15283
15284         * mf/merge.pe: new file.
15285
15286         * lily/freetype.cc: new file.
15287
15288         * lily/include/open-type-font.hh (class Open_type_font): new file.
15289
15290         * lily/include/freetype.hh: new file.
15291
15292         * lily/open-type-font.cc: new file.
15293
15294         * lily/all-font-metrics.cc (find_otf): new function.
15295
15296 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15297
15298         * lily/time-signature.cc (special_time_signature): Fix.
15299
15300         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15301         GTK2 before checking for pango.  Fixes -fgnome.
15302
15303         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15304         Scheme name.
15305
15306         * scm/define-markup-commands.scm:
15307         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15308
15309         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15310
15311         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15312         date versions.  Fixes configure.
15313         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15314         argument.
15315
15316 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15317
15318         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15319         names in .enc
15320
15321         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15322
15323 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15324
15325         * Documentation/user/changing-defaults.itely: add info about
15326         make-dynamic-script
15327
15328         * Documentation/user/notation.itely: add link in dynamics to
15329         section about make-dynamic-script.
15330
15331 2004-12-09  Christian hitz  <chhitz@gmx.net>
15332
15333         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15334
15335 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15336
15337         * buildscripts/mf-to-table.py (parse_logfile): use . for
15338         concatting name and group.
15339         (parse_logfile): use M for Minus (negative.)
15340
15341         * lily/include/type-swallow-translator.hh
15342         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15343
15344         * lily/*.cc: cosmetics around = sign.
15345
15346         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15347         lyric spacing on the penultimate column.
15348
15349 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15350
15351         * configure.in:
15352         * lily/accidental-placement.cc:
15353         * lily/bar-line.cc:
15354         * lily/beam-concave.cc:
15355         * lily/beam-quanting.cc:
15356         * lily/beam.cc:
15357         * lily/bezier-bow.cc:
15358         * lily/bezier.cc:
15359         * lily/break-align-interface.cc:
15360         * lily/custos.cc:
15361         * lily/dimension-cache.cc:
15362         * lily/dot-column.cc:
15363         * lily/font-metric.cc:
15364         * lily/font-select.cc:
15365         * lily/gourlay-breaking.cc:
15366         * lily/grob-property.cc:
15367         * lily/grob.cc:
15368         * lily/lily-guile.cc:
15369         * lily/line-spanner.cc:
15370         * lily/lookup.cc:
15371         * lily/lyric-extender.cc:
15372         * lily/lyric-hyphen.cc:
15373         * lily/mensural-ligature.cc:
15374         * lily/midi-def.cc:
15375         * lily/misc.cc:
15376         * lily/note-collision.cc:
15377         * lily/note-column.cc:
15378         * lily/note-head.cc:
15379         * lily/paper-outputter.cc:
15380         * lily/percent-repeat-item.cc:
15381         * lily/rest-collision.cc:
15382         * lily/side-position-interface.cc:
15383         * lily/simple-spacer.cc:
15384         * lily/slur-configuration.cc:
15385         * lily/slur-scoring.cc:
15386         * lily/slur.cc:
15387         * lily/spaceable-grob.cc:
15388         * lily/spacing-spanner.cc:
15389         * lily/spanner.cc:
15390         * lily/staff-symbol-referencer.cc:
15391         * lily/stem.cc:
15392         * lily/stencil.cc:
15393         * lily/system-start-delimiter.cc:
15394         * lily/system.cc:
15395         * lily/text-item.cc:
15396         * lily/tie.cc:
15397         * lily/tuplet-bracket.cc:
15398         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15399         <cmath> beacause isinf/isnan is undefined in <cmath>
15400
15401 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15402
15403         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15404
15405 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15406
15407         * VERSION: release 2.5.3
15408         
15409 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15410
15411         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15412
15413 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15414
15415         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15416
15417         * lily/note-head.cc (internal_print): always try the "s" head if
15418         u/d not found.
15419
15420         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15421
15422 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15423
15424         * mf/parmesan-heads.mf (overdone_heads): typos.
15425
15426 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15427
15428         * lily/parser.yy (markup): in markups, { .. } without command
15429         before are also flattened, ie \line must be explicitely used.
15430
15431         * Documentation/user/changing-defaults.itely:
15432         * Documentation/user/notation.itely: 
15433         * input/wilhelmus.ly: 
15434         * input/regression/instrument-name-markup.ly: 
15435         * input/regression/markup-score.ly: 
15436         * input/regression/new-markup-scheme.ly: 
15437         * input/regression/new-markup-syntax.ly: 
15438         * input/test/coriolan-margin.ly: use \line in markups where
15439         appropriate
15440         
15441 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15442
15443         * scm/new-markup.scm (map-markup-command-list): helper function
15444         used in parser.yy to map markup commands on a markup list.
15445
15446         * lily/parser.yy: get rid off < > in markups by treating { } as
15447         real lists.
15448
15449         * lily/lexer.ll: remove < > from markup lexer mode.
15450
15451         * scripts/convert-ly.py (conv): add rule for converting 
15452         \markup < > to \markup { }
15453
15454         * ly/titling-init.ly: 
15455         * input/test/coriolan-margin.ly: 
15456         * input/regression/new-markup-syntax.ly: 
15457         * input/regression/new-markup-scheme.ly: 
15458         * input/regression/multi-measure-rest-text.ly: 
15459         * input/regression/markup-stack.ly: 
15460         * input/regression/markup-score.ly: 
15461         * input/regression/instrument-name-markup.ly: 
15462         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15463         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15464         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15465         * input/wilhelmus.ly: 
15466         * Documentation/user/notation.itely: 
15467         * Documentation/user/music-glossary.tely: 
15468         * Documentation/user/changing-defaults.itely: change < > to { } in
15469         markups
15470
15471 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15472
15473         * lily/accidental-placement.cc (position_accidentals): shortcut if
15474         no accidentals to place.
15475
15476 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15477
15478         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15479         typo s/ly:dimension ?/ly:dimension?/
15480
15481         * input/regression/lily-in-scheme.ly: 
15482         * input/regression/music-function.ly: 
15483         * ly/spanners-init.ly (assertBeamSlope): 
15484         * scm/music-functions.scm (def-grace-function): add the paper
15485         argument to music function definitions.
15486
15487 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15488
15489         * lily/moment.cc (LY_DEFINE):
15490         ly:moment-main-{denominator,numberator}, new function.
15491
15492         * lily/score-engraver.cc (typeset_all): assign to column on basis
15493         of axis-group-parent-X setting.
15494
15495         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15496         add_element() on basis of axis-group-parent-Y setting.
15497
15498         * lily/grob.cc: add axis-group-parent-{XY} properties.
15499
15500         * input/regression/spacing-stick-out.ly: new file.
15501
15502         * lily/simple-spacer.cc (add_columns): use binary search for
15503         setting column rods. Changes O(n^2) to O(n log(n)) for
15504         constructing spacing problem from columns.
15505         (add_columns): read allow-outside-line to make sure no texts stick
15506         out.
15507         (solve): Simple_spacer::is_active() only determines
15508         satisfies_constraints_ for non-ragged typesetting.
15509
15510         * lily/simultaneous-music.cc (to_relative_octave): only set
15511         old_relative_used if return pitch actually changed.
15512
15513         * scm/define-context-properties.scm
15514         (all-user-translation-properties): change to match implementation.
15515
15516         * python/lilylib.py: Replace re.match by re.search and adds "-c
15517         showpage" to the gs command line (Johannes Schindelin)
15518
15519         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15520         before processing. Prevents crash when inf is in the extent.
15521
15522         * scm/define-markup-commands.scm (note-by-number): add "s" to
15523         "noteheads-" glyphname.
15524  
15525         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15526         music function as well.
15527         
15528 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15529
15530         * VERSION: release 2.5.2
15531
15532         * Documentation/user/changing-defaults.itely (Creating titles):
15533         add breakbefore variable.
15534
15535         * lily/paper-book.cc (set_system_penalty): new function. Set
15536         penalty_ based on breakBefore setting
15537
15538         * lily/context-specced-music-iterator.cc (construct_children):
15539         interpret special context id $uniqueContextId 
15540
15541         * lily/context.cc (create_unique_context): new method. Move
15542         creation of unique (\new) contexts into interpreting phase. This
15543         makes
15544
15545           foo= \new Staff ..
15546           << \foo \foo >>
15547
15548         produce 2 staves.
15549         
15550
15551         * scm/define-music-properties.scm (all-music-properties): add
15552         quoted-voice-direction
15553
15554         * ly/music-functions-init.ly: killCues function.
15555
15556         * scm/music-functions.scm (cue-substitute): move creation of voice
15557         contexts further to the back. 
15558
15559 2004-11-25  Werner Lemberg  <wl@gnu.org>
15560
15561         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15562         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15563
15564 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15565
15566         * buildscripts/guile-gnome.sh: Fixed typo.
15567
15568 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15569
15570         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15571
15572         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15573
15574         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15575         to regular engraver. 
15576
15577 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15578
15579         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15580
15581 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15582
15583         * scm/define-markup-commands.scm (fill-line): Typo.
15584
15585         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15586         and newer.
15587
15588 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15589
15590         * ly/dynamic-scripts-init.ly: Fixed typo.
15591
15592 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15593
15594         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15595         note-head, to have different attachment points for up and down.
15596
15597         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15598
15599         * mf/feta-generic.mf (else): remove solfa.
15600
15601         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15602
15603         * scm/define-context-properties.scm
15604         (all-user-translation-properties): add shapeNoteStyles property.
15605
15606         * lily/shape-note-heads-engraver.cc (process_music): new file.
15607
15608         * lily/event.cc (transpose): call Event::transpose() for
15609         transposing the tonic.
15610
15611 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15612
15613         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15614         Unicode/OpenType and AFM.
15615
15616         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15617
15618 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15619
15620         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15621
15622         * lily/context.cc (Context): unprotect key from ctor.
15623
15624         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15625         is '()
15626         (stack-stencils): idem.
15627
15628         * Documentation/user/changing-defaults.itely (Creating titles):
15629         document new title layout options.
15630
15631         * lily/parser.yy (lilypond_header_body): copy previous
15632         $globalheader if present.
15633
15634         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15635         ly:module-copy
15636         
15637         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15638
15639         * scm/titling.scm: remove old titling functions
15640
15641         * lily/stencil.cc (translate): remove absolute dimension.
15642
15643         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15644         via markup.
15645
15646         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15647         field from user-supplied markup
15648
15649         * scm/define-markup-commands.scm (on-the-fly): new markup
15650         command. Enter SCM markup procedure directly in Scheme.
15651         (fromproperty): new markup command. Read markup from props argument.
15652
15653         * scm/titling.scm (marked-up-title): create title via
15654         user-specified markup. 
15655
15656         * scm/define-markup-commands.scm (column): remove empty stencils
15657         from column.
15658
15659         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15660         not have side-effect of creating variable stub.
15661
15662         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15663
15664 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15665
15666         * scm/encoding.scm (coding-alist): 
15667         * scm/font.scm (add-ec-fonts):
15668         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15669         Extended-TeX-Font-Encoding---Latin.
15670
15671         * lily/side-position-interface.cc (general_side_position): Add
15672         actual offset to error message (avoid constant error messages).
15673
15674         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15675         block.
15676
15677         * lily/font-select.cc (select_encoded_font)
15678         (get_font_by_mag_step, get_font_by_design_size): 
15679         * lily/modified-font-metric.cc (Modified_font_metric): 
15680         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15681
15682         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15683         (read-encoding-file): Bugfix: do not require space after bracket.
15684
15685         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15686         these do not exist.
15687
15688 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15689
15690         * Documentation/user/notation.itely: added info about typesetting
15691         boxed bar numbers.
15692
15693 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15694
15695         * flower/interval.cc (T_to_string): gcc4 fixes.
15696
15697         * scm/define-markup-commands.scm (fill-line): use
15698         stack-stencils. This fixes problems with putting already centered
15699         stencils in a line.
15700
15701         * VERSION: release 2.5.1
15702
15703         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15704
15705 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15706
15707         * input/example-[1-3].ly: simplify.
15708
15709         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15710
15711         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15712         show glyphs.
15713
15714         * scm/encoding.scm (decode-byte-string): new function.
15715
15716         * scripts/convert-ly.py (conv): add warning about
15717         set-global-staff-size.
15718
15719         * Doxyfile: add. 
15720
15721         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15722         (conv): warn for TextSpanner split.
15723         (conv): warn for textheight.
15724
15725 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15726
15727         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15728         building the documentation, info with images are installed.
15729         (final-install): Fix description.  Mention sourcing of login
15730         scripts (instead of running).
15731
15732 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15733
15734         * Debian lmodern support.  Note that LilyPond will issue warnings
15735         
15736             no such encoding: "FontSpecific"
15737
15738           The font selection mechanism wants to get the encoding from the
15739           font itself, but the idea of lmodern is that it is usable with
15740           different encodings, ie, Lily should get the encoding from the
15741           font tree, rather than the font itself.  This would require some
15742           more work.
15743         
15744         * configure.in: Test for and accept lmodern if EC fonts not found.
15745
15746         * scm/framework-tex.scm (font-load-command): TeX font name
15747         mangling for latin1 encoded cork-lm fonts.
15748         (convert-to-ps): Load lm.map if available.
15749
15750         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15751         available.
15752
15753         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15754
15755         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15756         available.
15757
15758         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15759         path for absolute file name, that is silly.
15760
15761         * lily/score-engraver.cc (initialize): 
15762
15763         * Documentation/user/GNUmakefile (local-install-info): Invoke
15764         install-info --remove first.
15765
15766         * #include cleanup (Andreas Scherer).
15767
15768 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15769
15770         * input/test/script-abbreviations.ly: fix typos.
15771
15772 2004-11-17  Werner Lemberg  <wl@gnu.org>
15773
15774         * python/lilylib.py (options_help_str): Support pretty-printing of
15775         newlines in fourth element of option description.
15776
15777         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15778         feature.
15779         Sort options.
15780
15781         * Documentation/user/lilypond-book.itely: Finish update.
15782
15783 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15784
15785         * Documentation/user/macros.itexi: Add comment about \command.
15786
15787         * Documentation/user/lilypond.tely:
15788         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15789         and lilypond-book nodes, so that `info lilypond' visits the manual
15790         at top level, and `info lilypond-book' visits the lilypond-book
15791         section.
15792
15793         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15794         and packager messages.
15795
15796         * lily/pangofc-afm-decoder.cc: Update test.
15797
15798 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15799
15800         * scm/lily-library.scm (char->unicode-index): New function.
15801
15802         * scm/output-gnome.scm: 
15803         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15804
15805         * Proper naming of file name throughout; s/filename/file[-_]name/.
15806
15807         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15808
15809         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15810
15811 2004-11-16  Werner Lemberg  <wl@gnu.org>
15812
15813         * scripts/lilypond-book.py: The Lord has commanded me to use only
15814         tabs for indentation.  Your humble servant obeys.
15815
15816 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15817
15818         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15819         including font, if LilyPond-feta font is only feta font in path.
15820
15821         * scm/output-gnome.scm (text): Revert to file name of font if font
15822         has no name.  Fixes ec font selection.
15823         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15824
15825         * scm/framework-svg.scm:
15826         * scm/output-svg.scm: New file.  TODO: figure out how to
15827         do character by index in font.
15828
15829         * scm/output-sodipodi.scm: Remove.
15830
15831         * scm/output-ps.scm (stem): Remove.
15832
15833 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15834
15835         * scm/output-gnome.scm (beam): New function.
15836         (slur): Round corners.
15837         (round-filled-box): Round corners.
15838
15839 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15840
15841         * scm/output-gnome.scm (beam): add function.
15842         (draw-line): new routine.
15843         (dashed-line): stub; call draw-line
15844         (polygon): new routine.
15845
15846 2004-11-15  Werner Lemberg  <wl@gnu.org>
15847
15848         * Documentation/user/lilypond-book.itely: Revise section on
15849         lilypond-book options.
15850         Other minor fixes.
15851
15852         * scripts/lilypond-book.py: Change indentation to 4.
15853         Minor formatting.
15854
15855 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15856
15857         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15858         grobs that have tweaks specced.
15859         
15860 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15861
15862         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15863
15864 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15865
15866         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15867         actual char #, not 0 based index.
15868
15869         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15870
15871         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15872         Warning: do make -C mf clean.
15873
15874         * lily/context-property.cc: Compile fix.
15875
15876         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15877         Grok ec-fonts, braces and dynamics.
15878
15879         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15880
15881 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15882
15883         * lily/include/tweak-registration.hh: new file.
15884
15885         * lily/tweak-registration.cc: new file.
15886
15887         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15888         saving tweaks.
15889
15890         * scm/output-gnome.scm (text): comment dribble.
15891
15892 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15893
15894         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15895
15896         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15897         path-def before using.  Fixes muchtomany slurs in wrong places
15898         bug.
15899
15900 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15901
15902         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15903
15904         * lily/include/object-key-undumper.hh (Module): new file.
15905
15906         * lily/object-key-undumper.cc (Module): New file. Deserialize
15907         keys. SCM bindings
15908
15909         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15910         Provide SCM bindings.
15911
15912         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15913         new file. Serialize object keys.
15914         
15915         * lily/object-key.cc (dump): new function.
15916         (as_scheme): new virtual function
15917         (undump): new function
15918         (undumpers): new table.
15919
15920         * lily/include/global-context.hh (Context): take \score key upon init.
15921
15922         * lily/object-key-dumper.cc (serialize_key): new file.
15923
15924         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15925
15926         * lily/lily-lexer.cc: remove \quote.
15927
15928         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15929
15930         * lily/context.cc (Context): take key argument in ctor.
15931         (create_context): new function
15932
15933         * lily/grob.cc (Grob): take key argument in ctor.  
15934
15935         * lily/lilypond-key.cc (do_compare): new file.
15936
15937         * lily/object-key.cc (Object_key): new file.
15938
15939         * lily/include/object-key.hh (class Object_key): new file.
15940
15941         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15942
15943 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15944
15945         * Documentation/user/lilypond-book.itely: add small warning about
15946         noindent default in lilypond-book.
15947
15948         * Documentation/user/converters.itely: add examples for convert-ly.
15949
15950         * Documentation/user/examples.itely: change version string in templates
15951         to 2.4.0.
15952
15953 2004-11-12  Karl Hammar  <karl@aspodata.se>
15954
15955         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15956         cmdline, use xargs instead (backportme)
15957
15958 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15959         
15960         * Documentation/user/: Numerous fixes in the user manual.
15961
15962 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15963
15964         * lily/parser.yy (re_rhythmed_music): search music expression for
15965         context-id, surround by \new Voice if not found. Fixes:
15966         addlyrics-second-staff.ly
15967
15968         * VERSION: 2.5.0 released.
15969         
15970 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15971
15972         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15973
15974         * Documentation/user/GNUmakefile: Separate rules for split and
15975         unsplit html documents.  Remove perl massaging.  (backportme)
15976
15977 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15978
15979         * Documentation/user/lilypond-book.itely: add short warning about
15980         \lilypond{} in LaTeX docs.
15981
15982 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15983
15984         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15985         found.  (backportme)
15986
15987         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15988         version requirement.  (backportme)
15989
15990         * configure.in: Be explicit about old versions of
15991         ec-fonts-mtraced.  (backportme)
15992
15993         * lily/context-selector.cc (set_tweaks): New function.
15994         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15995         web with -DTWEAK.
15996
15997         * Documentation/user/introduction.itely (Automated engraving):
15998         Remove fragment option.  Fixes web.
15999
16000         * lily/context-property.cc (make_item_from_properties):
16001         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
16002         #ifdef.
16003
16004         * scm/define-context-properties.scm
16005         (all-internal-translation-properties): Add tweakRank and tweakCount.
16006
16007         * lily/grob.cc: 
16008         * scm/define-grob-properties.scm (all-internal-grob-properties):
16009         Add tweak-rank and tweak-count.
16010
16011 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16012
16013         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
16014         New function.
16015         (text): Use them.
16016
16017         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
16018         animated/opaque grob dragging tweaks.
16019
16020         * buildscripts/guile-gnome.sh: Update.
16021
16022 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
16023
16024         * scm/define-grobs.scm (all-grob-descriptions): Added
16025         line-interface to the LigatureBracket object.
16026
16027 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16028
16029         * scm/framework-gnome.scm (item-event): Support non-animated mouse
16030         dragging tweaks.
16031
16032         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
16033
16034         * lily/context-selector.cc (store_context): New function.
16035
16036         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
16037         (store_grob): New function.
16038         (identify_grob): Add Moment parameter.
16039
16040         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
16041         exists.
16042
16043         * scm/framework-gnome.scm (save-tweaks): Write as alist.
16044
16045 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
16046
16047         * scm/framework-gnome.scm (item-event): Print grob id.
16048         (save-tweaks): New function.
16049         (tweak): New funtion.
16050         (item-event): Use it, bound to arrow keys.
16051
16052         * lily/context-property.cc (make_item_from_properties): Register grob.
16053         * lily/context.cc (add_context): Register context.
16054
16055         * lily/include/context-selector.hh:
16056         * lily/include/grob-selector.hh:
16057         * lily/context-selector.cc:
16058         * lily/grob-selector.cc: New file.
16059
16060 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16061
16062         * lily/slur.cc: add 'positions to interface
16063
16064         * lily/main.cc: reinstate PS as standard output format. 
16065
16066         * scm/framework-tex.scm (output-preview-framework): print systems
16067         up to first non title system.
16068
16069         * lily/grace-engraver.cc (start_translation_timestep): split
16070         scm_cadddr
16071         
16072 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16073
16074         * lily/quote-iterator.cc (Module): remove old quote-iterator
16075
16076         * scm/define-music-types.scm (music-descriptions): move
16077         NewQuoteMusic over QuoteMusic
16078
16079         * Documentation/user/notation.itely (Formatting cue notes): use
16080         \cueDuring.
16081
16082         * lily/new-quote-iterator.cc (quote_ok): new function.
16083
16084         * input/regression/quote-cue-during.ly: new file.
16085
16086         * input/regression/quote-grace.ly: new file.
16087
16088         * scm/define-context-properties.scm (Module): change definition of
16089         graceSettings
16090
16091         * lily/context-property.cc (Module): rename from
16092         translator-property.cc
16093
16094         * lily/context.cc (context_name_symbol): new function
16095
16096         * lily/grace-engraver.cc: new file. Set properties for grobs based
16097         on the grace-ness of now_moment().
16098
16099         * scm/music-functions.scm (add-grace-property): use list
16100         iso. vector for graceSettings
16101         remove set-{start,stop}-grace-properties. 
16102
16103         * lily/new-quote-iterator.cc (construct_children): set
16104         quote_outlet_ if no quoted-context-{id,type} specified.
16105
16106         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16107
16108         * lily/parser.yy (command_element): remove \quote.
16109
16110         * ly/music-functions-init.ly (location): add quoteDuring music
16111         function. 
16112
16113         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16114         optional semicolon. (backportme)
16115
16116 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16117
16118         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16119         need to link to GUILE et al.
16120
16121 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16122
16123         * scm/define-music-properties.scm (all-music-properties): add
16124         quoted-context-type, quoted-context-id.
16125
16126         * scm/lily.scm (type-check-list): new function.
16127         
16128         * scm/lily-library.scm: new file. Generic library routines.
16129
16130         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16131         parser.
16132
16133         * ly/music-functions-init.ly: add quoteDuring function.
16134
16135         * lily/include/music-iterator.hh (class Music_iterator): rename
16136         set_translator -> set_context
16137
16138         * lily/parser.yy (Generic_prefix_music_scm): add
16139         MUSIC_FUNCTION_SCM_SCM_MUSIC
16140
16141         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16142
16143         * scm/framework-tex.scm (header): sanitize TeX paper size.
16144         (backportme)
16145
16146 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16147
16148         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16149
16150         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16151
16152         * scm/framework-tex.scm (font-load-command): Use T1 if no
16153         font-encoding set.  (backportme)
16154
16155         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16156         exists before converting.  (backportme)
16157
16158         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16159         exists before converting.  (backportme)
16160         (convert-to-ps): Remove .ps file if it exists before
16161         converting.  (backportme)
16162
16163         * lily/lexer.ll: Remove extra progress newline, use present tense.
16164
16165         * scm/paper.scm (paper-alist): public.
16166         * scm/framework-tex.scm (convert-to-ps):
16167         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16168         command line.
16169
16170 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16171
16172         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16173
16174         * lily/recording-group-engraver.cc (derived_mark): mark
16175         now_events_. (backportme)
16176
16177 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16178
16179         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16180
16181         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16182         invoking latex. (backportme.)
16183
16184         * lily/stem.cc (off_callback): center stems for all rest stems.
16185
16186 2004-11-05  Werner Lemberg  <wl@gnu.org>
16187
16188         * Documentation/user/lilypond.tely: Add more guidelines for writing
16189         lilypond texinfo documents.
16190
16191 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16192
16193         * Documentation/index.html.in: remove <hr>.
16194
16195         * THANKS: change 2.3 to 2.4.
16196
16197 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16198
16199         * scm/output-gnome.scm: More fontconfig comment.
16200
16201 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16202
16203         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16204         <package> directory in $(builddir)/share according with
16205         PACKAGE_NAME defined in the VERSION file.
16206
16207 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16208
16209         * lily/beam.cc (rest_collision_callback): use local beam
16210         multiplicity.
16211
16212         * input/regression/stem-stemlet.ly: new file.
16213
16214         * lily/stem.cc (add_head): store rests as well.
16215
16216         * scm/define-grob-properties.scm (all-user-grob-properties): add
16217         stemlet-length
16218
16219         * lily/stem.cc: store rests as well.
16220         
16221         * input/regression/new-slur.ly: mention forcing.
16222
16223 2004-11-04  Werner Lemberg  <wl@gnu.org>
16224
16225         * Documentation/user/*: A new round of layout fixes and document
16226         structure cleanup.
16227
16228 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16229
16230         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16231
16232 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16233
16234         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16235
16236 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16237
16238         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16239
16240         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16241
16242         * lily/main.cc (main): Invoke identify.
16243
16244         * scm/lily.scm (postscript->pdf): Remove progress newline.
16245         Write progress to stderr.
16246
16247         * lily/paper-book.cc (output): Remove progress newline.
16248
16249         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16250         gettext on user messages, and remove whitespace.
16251
16252         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16253
16254         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16255         argv[0] (Thomas Scharkowski).
16256
16257         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16258         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16259         for ec-fonts-mtraced.
16260
16261         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16262         --srcdir build (Bertalan).
16263
16264         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16265         headers and library too (Laura Conrad).
16266
16267         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16268         package for guile too (Laura Conrad).
16269
16270         * lily/main.cc (usage): Typo.
16271
16272 2004-11-02  Werner Lemberg  <wl@gnu.org>
16273
16274         * Documentation/user/notation.ly: More fixes to improve appearance.
16275
16276         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16277         better output for multicolumn tables.
16278
16279 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16280
16281         * lily/main.cc (dir_info): Fixed typo in the printouts.
16282
16283 2004-11-01  Werner Lemberg  <wl@gnu.org>
16284
16285         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16286         of output.
16287         Set `per_line' to 2; replace hard-coded value with it.
16288
16289         * Documentation/user/*: Many fixes to improve appearance of
16290         printed manual.
16291
16292 2004-11-01  Werner Lemberg  <wl@gnu.org>
16293
16294         * Documentation/user/changing-defaults.itely,
16295         Documentation/user/notation.ly,
16296         Documentation/user/programming-interface.itely: Use @/.
16297         Fix formatting of some lilypond snippets and tables.
16298
16299         * scripts/lilypond-book.py (compose_ly): Provide useful default
16300         for LINEWIDTH in `override'.
16301
16302 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16303
16304         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16305
16306 2004-10-31  Werner Lemberg  <wl@gnu.org>
16307
16308         Resetting @exampleindent to `5' gives ugly results with texinfo's
16309         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16310         (if not quoting) to change @exampleindent only locally.
16311
16312         * scripts/lilypond-book.py (NOQUOTE): New variable.
16313         (output) [LATEX]: Remove AFTER and BEFORE.
16314         [TEXINFO]: Remove AFTER and BEFORE.
16315         Fix QUOTE and VERBATIM pattern.
16316         Add NOQUOTE pattern.
16317         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16318         and BEFORE.
16319         [output_texinfo]: Use NOQUOTE.
16320
16321 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16322
16323         * Documentation/user/changing-defaults.itely: clarify paper
16324         size commands with correct info.
16325
16326         * Documentation/user/lilypond-book.itely: add more docs for
16327         filename extensions.
16328
16329 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16330
16331         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16332         (PATCH_LEVEL): start 2.5.0.
16333
16334 #Local variables:
16335 #coding: utf-8
16336 #End:
16337