]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* lily/output-def.cc (assign_context_def): use set_variable().
[lilypond.git] / ChangeLog
1 2004-08-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2
3         * lily/output-def.cc (assign_context_def): use set_variable().
4
5         * lily/text-item.cc (interpret_string): accept string input
6         encoding too.
7
8         * scm/encoding.scm (read-encoding-file): print warning when file
9         can't be found.
10
11         * tex/latin1.enc: remove.
12
13         * tex/GNUmakefile ($(outdir)/latin1.enc): create latin1 from GS.
14
15         * lily/rod.cc (columnize): robustness fix. Don't crash for
16         nil span points. Fixes: appoggiatura-segfault.ly
17         (add_to_cols): extra robustness fix.
18
19 2004-08-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
20
21         * lily/text-item.cc (interpret_string): use lookup_variable() to
22         fidn inputencoding. Now, \paper inherits inputencoding from
23         \bookpaper.
24
25         * lily/script-engraver.cc (stop_translation_timestep): remove slur
26         collision kludge.
27
28         * lily/dynamic-engraver.cc (typeset_all): remove slur collision
29         kludge.
30
31 2004-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
32
33         * lily/main.cc (parse_argv): Bugfix: handle 'p'.  Add warning.
34
35 2004-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
36
37         * lily/spanner.cc (spanned_rank_iv): Bugfix.
38
39         * lily.scm: Mark un-internationlised user messages (with FIXME).
40
41         * lily/include/modified-font-metric.hh (struct
42         Modified_font_metric): New file.  (WAS: incorrectly named
43         scaled-font-metric.hh ?)
44
45         * lily/include/scaled-font-metric.hh: Remove.
46
47         * lily/text-item.cc (interpret_string): Identify and document
48         input-encoding problem.
49
50         * lily/paper-book.cc (pages): Do not use `paper' as variable name
51         for a Bookpaper.
52
53         * tex/latin1.enc: Replace /minus with /hyphen.
54
55         * scm/encoding.scm: For latin1 (input-)encoding, use
56         latin1.  (Cork.enc is NOT latin1 -- see man latin1).
57
58         * ly/book-paper-defaults.ly: Add a comment about suspicious TeX
59         inputencoding.
60
61 2004-08-12  Heikki Junes  <hjunes@cc.hut.fi>
62
63         * Documentation/topdocs/INSTALL.html: fixes.
64
65 2004-08-12  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
66
67         * buildscripts/builder.py: Fix for scons CVS.
68
69 2004-08-11  Heikki Junes  <hjunes@cc.hut.fi>
70
71         * Documentation/user/notation.itely,
72         Documentation/topdocs/NEWS.texi, input/test/ambitus-mixed.ly,
73         input/test/ambitus-mixed.ly: fix plurals:
74         english: ambit, pl. ambits; latin: ambitus, pl. ambitus.
75
76 2004-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
77
78         * lily/dynamic-engraver.cc (typeset_all):
79         * lily/script-engraver.cc (stop_translation_timestep): Handle
80         collisions with new-slur.
81
82 2004-08-10  Jan Nieuwenhuizen  <janneke@gnu.org>
83
84         * scm/define-grobs.scm (all-grob-descriptions): Add
85         new-slur-interface.
86
87 2004-08-03  Jan Nieuwenhuizen  <janneke@gnu.org>
88
89         * elisp/lilypond-mode.el (LilyPond-command-alist): LilyPond now
90         produces .PS
91
92 2004-08-09  Carl Sorensen  <carldsorensen@comcast.net>
93
94         * scm/define-grob-properties.scm (all-user-grob-properties): fix
95         definition of number-type
96
97 2004-08-08  Carl Sorensen  <carldsorensen@comcast.net>
98
99         * scm/fret-diagrams.scm : change sans-serif font encoding from 
100         TeX-text to ec (uses ecss fonts instead of cmss fonts)
101
102         * scm/define-grob-interfaces.scm (fret-diagram-interface): add
103         number-type and label-dir
104
105         * scm/define-grob-properties.scm: add number-type and label-dir
106
107         * scm/fret-diagrams.scm (label-fret): allow fret label to be on either 
108         left or right.  Allow choice of upper-case roman, lower-case roman, or
109         arabic numerals in fret label
110
111 2004-08-04  Werner Lemberg  <wl@gnu.org>
112
113         * lily/slur-quanting.cc: Include libc-extension.hh.
114         s/round/my_round/.
115         * ly/engraver-init.ly (VaticanaVoice, GregorianTranscriptionVoice):
116         s/autobeaming/autoBeaming/.
117
118 2004-08-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
119
120         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): reinstate
121         renameinput.
122
123 2004-08-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
124
125         * lily/lookup.cc (round_filled_box): remove warnings about blot
126         diameter.
127
128         * scm/paper.scm (paper-set-staff-size): make linethickness more
129         easily tunable.
130
131         * lily/parser.yy (new_lyrics): \addlyrics -> \oldaddlyrics,
132         \newlyrics -> \addlyrics
133
134         * lily/text-spanner.cc (print): use it.
135
136         * lily/dynamic-text-spanner.cc (print): use it.
137
138         * lily/grob.cc (robust_relative_extent): new function.
139
140         * scripts/lilypond-book.py (main): add -f tex as default process.
141
142         * lily/text-spanner.cc (print): only take linear_combination of
143         nonempty interval.
144         
145
146 2004-08-02  Pedro Kroger  <kroeger@pedrokroeger.net>
147
148         * scm/page-layout.scm (default-page-make-stencil): If leftmargin
149         isn't specified by the user in \bookpaper center the music in the
150         page.
151
152 2004-08-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
153
154         * Fix some problems after the renaming of my-lily -> lily
155
156 2004-08-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
157
158         * lily/lily-parser.cc (parse_string): don't overwrite keytable_.
159
160         * lily/slur-quanting.cc (enumerate_attachments): apply center on
161         stem-X in more cases. 
162
163         * lily/stem.cc (dim_callback): solve todo.
164
165 2004-08-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
166
167         * input/test/README: new file.
168
169         * lily/lily-parser.cc: rename my-lily* files.
170
171         * lily/my-lily-parser.cc (LY_DEFINE): plug memory leak: unprotect
172         parser.
173
174         * lily/include/my-lily-lexer.hh (class Lily_lexer): smobify lexer.
175
176         * lily/include/my-lily-parser.hh: rename My_lily -> Lily
177
178         * make/mutopia-targets.make (local-WWW): don't make ps.gz
179         examples. They take a huge amount of space.
180
181         * Documentation/user/GNUmakefile: fix symlinks.
182
183         * VERSION: 2.3.10 released.
184         
185         * input/test/lyrics-skip-notes.ly: remove
186
187         * input/test/stem-cross-staff.ly (noFlag): fold into manual
188
189         * input/test/{spacing-2,staff-space,tablature,textscript}.ly:
190         remove.
191
192 2004-08-01  Heikki Junes  <hanwen@xs4all.nl>
193
194         * Documentation/user/{changing-defaults,notation,tutorial}.itely: fixes.
195
196 2004-08-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
197
198         * input/regression/beam-dir-functions.ly: move from test/
199
200         * Documentation/user/notation.itely (Feathered beams): new node.
201
202         * Documentation/user/changing-defaults.itely (Difficult tweaks):
203         new node
204
205         * input/regression/lyric-hyphen-retain.ly: move to regression.
206
207         * input/regression/harmonic.ly: fold into manual
208         
209         * input/test/{hshift,move-accidentals,crescendi,feathered-beam,
210         stem-length,chord-names-no-inversions}.ly: remove
211         
212         * input/test/tie-cross-voice.ly: move to regression.
213
214         * Documentation/user/notation.itely (Running trills): new node.
215
216         * scm/define-grobs.scm (all-grob-descriptions): new grob TrillSpanner
217
218         * scm/define-music-types.scm (music-descriptions): add TrillSpanEvent
219
220         * lily/trill-spanner-engraver.cc: new file.
221
222         * input/regression/trill-spanner.ly: new file.
223
224         * input/test/timing.ly: fold into manual.
225
226         * input/test/time.ly: remove
227
228         * input/test/trill.ly: remove
229         
230         * input/test/time-signature-double.ly: fold into manual
231
232         * input/test/separate-staccato.ly: remove
233
234         * input/test/spanner-after-break-tweak.ly: fold into manual.
235
236         * input/test/script-priority.ly: fold into manual.
237
238         * input/test/scheme-interactions.ly: remove.
239         
240         * input/test/unfold-all-repeats.ly (mel),
241         input/test/repeat.ly,input/test/repeat-shorter-bracket.ly,
242         input/test/polymetric-differing-notes.ly input/test/polymetric.ly:
243         fold into manual.
244
245         * input/regression/no-staff.ly: move from input/test/
246
247         * input/regression/markup-score.ly: move from input/test/
248
249         * input/test/lyrics-melisma-faster.ly: fold into manual
250         
251         * input/test/lyrics-melisma-variants.ly: fold into manual
252
253         * Documentation/user/notation.itely (Popular music): new node. 
254
255         * input/test/gourlay.ly: remove
256         
257         * input/test/improv.ly: fold into manual.
258
259         * input/test/figured-bass-alternate.ly (fl): remove
260
261         * lily/dynamic-text-spanner.cc (print): new file.
262
263         * scm/define-grobs.scm (all-grob-descriptions): add DynamicTextSpanner
264
265         * lily/engraver-group-engraver.cc (do_announces): reorder logic:
266         keep recursing into children in case a parent context inserts a
267         grob into a child context.
268
269         * lily/dynamic-engraver.cc (acknowledge_grob): add accidentals to
270         
271 2004-07-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
272
273         * scm/define-markup-commands.scm (postscript): new markup command
274         \postscript
275
276         * Documentation/user/notation.itely (Formatting cue notes): new
277         section.
278
279         * input/test/clef-end-of-line.ly: fold into manual.
280
281         * input/test/scales-greek.ly: remove.
282
283         * input/test/chords-without-melody.ly: fold into manual.
284
285         * input/test/cadenza-skip.ly: remove.
286
287         * input/test/clef-8-syntax.ly: remove.
288
289         * input/test/clef-manual-control.ly: move into manual.
290
291         * Documentation/user/notation.itely (Aligning to cadenzas): fold
292         in cadenza-skip.ly
293
294         * mf/parmesan*.mf: change neo_mensural to neomensural.
295
296         * input/test/trills.ly: remove.
297
298         * input/test/transposition.ly: remove.
299
300         * input/test/to-xml.ly: move to no-notation.
301
302         * buildscripts/lilypond-profile.sh: change zsh bomb to warning.
303
304         * lily/ledger-line-spanner.cc (print): use staff variable, not
305         me. Fixes ledger lines on differently sized staves.
306
307         * input/test/rhythm-excercise.ly: remove file.
308
309         * lily/stem.cc (dim_callback): only do something if visible. Fixes
310         spurious flag not found warning for 128th rest.
311
312         * input/regression/rest-dot-position.ly: new file.
313         
314         * input/test/rest-dot-positions.ly: remove
315
316         * lily/staff-symbol-referencer.cc (get_position): emergency
317         fallback: use coordinate * 2.
318
319         * input/no-notation/midi-scales.ly: move from test/
320
321         * scm/define-markup-commands.scm (score): remove debugging code.
322
323         * input/test/incipit.ly (violin): remove. 
324
325         * lily/system-start-delimiter.cc (print): only draw system
326         delimiter to staves that reach up to left bound of the delimiter.
327
328         * input/no-notation/embedded-scm.ly: move from test/
329
330         * input/test/follow-voice.ly: remove
331
332         * input/no-notation/dynamic-absolute-volume.ly: move from test/.
333
334         * input/test/drarn*: remove
335         
336         * input/test/count-systems.ly: remove.
337
338         * lily/bar-line.cc (compound_barline): fix : for staff without
339         lines.
340
341         * lily/accidental.cc (print): use music_font_alist_chain(). This
342         fixes smaller cautionaries.
343
344         * scm/define-grobs.scm (all-grob-descriptions): use fetaMusic
345         encoding for accidental.
346
347         * Documentation/user/notation.itely (Educational use): new section
348
349         * input/test/*.ly: clean up directory: move examples into manual
350         or regtest.
351         
352
353         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.log): add
354         mode as well. This fixes resolution errors.
355
356 2004-07-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
357
358         * scm/lily.scm (postscript->png): show commands for --verbose.
359
360         * flower/include/getopt-long.hh: opps. short option should be
361         char, not int.
362
363         * Documentation/user/GNUmakefile: use symlinks to save space.
364
365         * VERSION: 2.3.9 released.
366
367         * scripts/convert-ly.py (conv): remove \lyrics from \lyricsto.
368
369         * ly/gregorian-init.ly (neumeDemoPaper): remove duplication from
370         manual.
371
372         * Documentation/user/tutorial.itely (Integrating text and music):
373         remove \score and \notes from manual.
374
375         * lily/my-lily-lexer.cc (My_lily_lexer): really switch on note
376         mode in the beginning.
377
378 2004-07-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
379
380         * Documentation/user/changing-defaults.itely (Horizontal spacing):
381         Correct the documentation of the spacing parameters. 
382
383         * Documentation/user/tutorial.itely (Integrating text and music), 
384         Documentation/user/lilypond-book.itely (Integrating LaTeX and
385         music): Document that you need to add the map file ec-mftrace.map
386         in the dvips command.   
387
388 2004-07-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
389
390         * lily/score-engraver.cc (initialize): abort if ecrm10.pfa not
391         found.
392
393         * lily/text-item.cc (interpret_string): insert encoding setting
394         here
395
396         * scm/framework-ps.scm (ps-font-command): remove feta/parmesan
397         encoding kludge.
398
399         * Documentation/user/changing-defaults.itely (Text encoding): node
400         on encoding.
401
402         * lily/lyric-engraver.cc (try_music): remove superfluous check.
403
404         * lily/book-paper-def.cc (find_scaled_font): remove default
405         encoding, because it messes up font loading for feta and
406         parmesan. Encoding should only be specified for running texts.
407
408         * lily/modified-font-metric.cc (text_dimension): support coding
409         scheme ""
410         
411 2004-07-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
412
413         * lily/tie-engraver.cc (stop_translation_timestep): remember tie
414         definition, so \override works as expected.
415
416         * lily/measure-grouping-engraver.cc: clarify
417
418 2004-07-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
419
420         * lily/parser.yy (context_def_mod): remove \consistsend
421
422         * lily/context-def.cc (instantiate): use Translator::must_be_last
423         to determine engraver order.
424
425         * lily/translator.cc (must_be_last): new function
426
427         * scripts/convert-ly.py (conv): rule.
428
429         * lily/bar-line.cc (print): return '() for height == 0.0 too.
430
431 2004-07-27  Heikki Junes  <hjunes@cc.hut.fi>
432
433         * input/regression/{stanza-number,volta-multi-staff}.ly: fix docs.
434  
435 2004-07-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
436
437         * lily/include/lily-guile.hh (scm_is_int): compat glue.
438
439 2004-07-25  Pedro Kroger  <kroeger@pedrokroeger.net>
440
441         * input/regression/page-layout.ly: new file.
442
443         * scm/paper.scm (set-paper-dimensions): Preliminary support for
444         left and right margins.
445
446         * Documentation/user/changing-defaults.itely (Page layout):
447         Explain the leftmargin option.
448
449 2004-07-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
450
451         * input/test/lyrics-melisma-variants.ly (texidoc): new file.
452
453         * input/test/lyrics-melisma-faster.ly: new file.
454
455         * lily/new-lyric-combine-music-iterator.cc (find_voice): allow
456         change of melody by setting associatedVoice.
457
458         * lily/parser.yy (re_rhythmed_music): \lyricsto implies lyrics mode.
459
460         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): don't copy
461         file contents, rather \include them, so default linewidth is set.
462         (ly_options): make BOOKPAPER set of options. Move linewidth
463         settings there.
464
465         * Documentation/user/examples.itely: new file. Templates are to be
466         moved here.
467
468         * Documentation/user/programming-interface.itely: move chapter.
469
470         * scm/document-markup.scm (doc-markup-function): add @code
471
472         * stepmake/stepmake/texinfo-rules.make: remove chmod.
473
474 2004-07-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
475
476         * scm/page-layout.scm (plain-header): add printpagenumber boolean
477         to bookpaper.
478
479         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
480         $(outdir)/%.ly $(outdir)/%.ps): do all targets from lilypond binary.
481
482         * scripts/lilypond-latex.py (run_dvips): remove -bin everywhere.
483
484         * lily/GNUmakefile (NAME): create lilypond, not lilypond-bin 
485
486         * scripts/lilypond-latex.py: move from lilypond.py
487
488         * make/lilypond-vars.make: centralize LILYPOND_BOOK_FLAGS setting.
489         (LILYPOND_BOOK_FLAGS): use -f tex for lilypond-book.
490
491         * scm/lily.scm (postscript->png): new function
492         (postscript->pdf): new function
493
494         * lily/paper-book.cc (post_processing): call
495         convert-to-{dvi,ps,png,pdf}
496
497         * scripts/ps2png.py (option_definitions): new file.
498
499         * lily/paper-book.cc (output): call output-preview-framework
500         (post_processing): new function. Do PDF/PNG conversion.
501
502         * lily/paper-outputter.cc (close): new function.
503
504         * scm/framework-ps.scm (convert-to-pdf): new function. Call
505         ps2pdf.
506         (output-preview-framework): new function. Generate a preview .ps
507         
508
509 2004-07-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
510
511         * VERSION: release 2.3.8
512         
513         * lily/note-head.cc: remove ledger line handling.
514
515         * lily/ambitus.cc (print): strip away accidental / note head code,
516         and associated properties.
517
518         * lily/ambitus-engraver.cc (create_ambitus): change name to
519         AmbitusLine. Create AmbitusAccidental and AmbitusNoteHead for
520         other ambitus parts.
521         (create_ambitus): group grobs in Ambitus grouping object. 
522
523         * lily/include/pitch-interval.hh (Pitch>): new file.
524
525         * lily/pitch-interval.cc (add_point): new file.
526
527         * lily/ledger-line-engraver.cc: new file.
528
529         * lily/ledger-line-spanner.cc (print): new file. Set limits to
530         ledger line length to avoid clashes.
531
532 2004-07-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
533
534         * Documentation/user/invoking.itexi (Invoking lilypond): remove
535         deprecated options
536
537 2004-07-21  Jan Nieuwenhuizen  <janneke@gnu.org>
538
539         * SConstruct: Use only code files for TAGS.  Change GO_FAST_BUTTON
540         to command line option: fast=1 (default on).
541
542         * SConstruct[GO_FAST_BUTTON]: implement tips from Andreas Roach.
543         This brings SCons run-time on up-to-date tree down from 48s with
544         only checksums, to 34s without 2day checksums, to 14s (make needs
545         4 seconds).
546         (subdirs)[GO_FAST_BUTTON]: Try to read all subdirs only when
547         necessary.
548
549 2004-07-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
550
551         * lily/slur-quanting.cc (score_extra_encompass): add  break ;
552         (score_extra_encompass): process scripts at edges too, by checking
553         control points directly. 
554
555 2004-07-20  Jan Nieuwenhuizen  <janneke@gnu.org>
556
557         * po/nl.po: Update.
558
559         * lily/main.cc: Fix ly:option-usage help.
560
561         * input/regression/slur-script.ly: More collision tests.
562
563         * GNUmakefile.in (EXTRA_DIST_FILES): Add SConstruct.
564
565 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
566
567         * VERSION: release 2.3.7
568
569         * stepmake/generic-vars.make (EXTRA_DIST_FILES): dist SConscript
570         files.
571
572         * Documentation/user/notation.itely (Slurs): document ^ and _ for
573         slurs.
574
575         * input/regression/slur-script.ly: new file.
576
577         * lily/accidental-engraver.cc (process_acknowledged_grobs):
578         make accidental appear to come from note head engraver.
579
580         * lily/slur-quanting.cc: new file.
581         (score_extra_encompass): new function. Avoid scripts and
582         accidentals
583
584 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
585
586         * lily/include/lily-guile.hh: Remove guile-1.4 compatibility.
587         This greatly reduces the number of files that get recompiled
588         after touching config.hh.
589
590         * config.hh.in: Remove GUILE_*_VERSION.
591
592         * lily/new-slur.cc: Resolve conflicts.
593
594         * lily/stem-engraver.cc (make_stem): New method.
595
596         * lily/include/script-interface.hh:
597         * lily/script-interface.cc: New file.
598
599         * lily/include/script.hh:
600         * lily/script.cc: Remove.
601
602         * lily/music.cc (duration_log): New method.
603
604         * lily/script.cc (struct Skript): Remove.
605
606         * lily/new-slur.cc (get_base_attachments): Try at articulations.
607         Lots of coding cleanups (Stom).
608
609 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
610
611         * lily/new-slur.cc (avoid_staff_line): new function: avoid
612         collisions with staff lines.
613
614         * lily/my-lily-parser.cc (LY_DEFINE): add directory of argument to
615         global_path
616
617         * scm/define-grobs.scm (all-grob-descriptions): set ratio
618         .25. This flattens short slurs.
619
620         * lily/new-slur.cc (enumerate_attachments): move X of attachment
621         points for tilted slurs.
622
623         * input/regression/slur-tilt.ly: new file.
624
625         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): shorten
626         stems of 16th graces too.
627
628         * lily/beam-quanting.cc (score_forbidden_quants): make forbidden
629         quant penalty dependent on how much the line is in the gap.
630
631         * input/regression/grace-stem-length.ly: new file.
632
633         * lily/beam-quanting.cc (score_forbidden_quants): remove
634         interquant check. The penalty of 1000 is much too harsh, and the
635         inter case should be caught by check-staff-line-in-gap check.
636
637         * lily/scm-option.cc: move debug-beam to \paper.
638
639         * scripts/lilypond-book.py (Lilypond_snippet.write_ly): create
640         .txt files to appease makeinfo.
641
642         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly:
643         remove texttagline.
644         
645         * lily/new-slur.cc: cleanup, split in functions.
646
647         * lily/parser.yy (chord_body_element): allow octave-check = inside
648         chord body. 
649
650         * lily/new-slur.cc (score_encompass): variable head-distance penalty.
651
652         * lily/stem.cc (height): call Beam::after_line_breaking().
653
654         * lily/rest-collision.cc (force_shift_callback): only call shift
655         for columns containing rests.
656
657         * lily/new-slur.cc (print): use debug-slur-quanting paper var.
658
659         * input/regression/font-postscript.ly: invoke afm2tfm. 
660
661 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
662
663         * mf/SConscript: Build map files.
664
665         * SConstruct: Rename $out to out-www in web.
666
667 2004-07-17  Jan Nieuwenhuizen  <janneke@gnu.org>
668
669         * SConstruct (web_kluts): Have make web build in out-www.  Not.
670
671 2004-07-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
672
673         * Documentation/user/music-glossary.tely (Top): add fragment to
674         pertinent @lilypond entries.
675
676         * scm/define-grobs.scm: switch on new-slur by default.
677
678         * lily/scm-option.cc: symbol != string.
679
680         * lily/new-slur.cc (set_end_points): handle broken slurs. Doesn't
681         really work yet.
682         (set_end_points): make X coord of attachment dependent on  Y.
683         (score_encompass): add edges too.
684
685 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
686
687         * lily/stem.cc (get_beaming): new function.
688
689         * scripts/lilypond-book.py (compose_ly): make fragment mandatory
690         for fragment snippets. This fixes inclusion of toplevel-music
691         examples (such as new-slur.ly)
692  
693 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
694
695         * scripts/lilypond-book.py: Remove second import of stat.
696
697         * More SCons cleanups.
698
699         * Documentation/bibliography/computer-notation.bib (note): Remove
700         extraneous closing brace.
701
702 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
703
704         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): fix
705         stat calls.
706
707         * Documentation/bibliography/SConscript (bibs): failed try to get
708         bib2html find html-long.bst.
709
710         * buildscripts/bib2html.py (stat): fail if bibtex fails.
711
712         * make/stepmake.make: use usescons for using scons. 
713
714 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
715
716         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): Check
717         for lilypondend.  Import stat (huh?).
718
719 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
720
721         * make/mutopia-vars.make ($(addprefix $(outdir)/,$(LYM4_FILES):
722         bypass dvi. 
723
724         * input/regression/font-postscript.ly: new file. 
725
726         * scm/framework-ps.scm (load-fonts): load pfb files too.
727
728         * lily/pfb.cc (pfb2pfa): new file.
729
730 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
731
732         * scripts/lilypond-book.py (PREAMBLE_LY): set
733         toplevel-music-handler too.
734
735 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
736
737         * SConstruct (symlink): Add dvips and music-drawing-routines.ps.
738         (web_path): Fixes for webball.  Install fixes, add DESTDIR option.
739
740         * lily/slur.cc: Add quant-score to interface.  Fixes web build.
741
742         * python/SConscript:
743         * python/vim:
744         * input/mutopia/*SConscript: New file.
745
746         * input/mutopia/W.A.Mozart/: Use .ily suffix for includes.
747
748         * scm/define-grobs.scm (all-grob-descriptions): Use ,Slur::height,
749         fixes web build.
750
751         * make/stepmake.make (scons): re-route to SCONS if user has been
752         running scons in this tree.
753
754         * SConstruct (config_vars): Add CPPDEFINES.
755         (env): Set checksums type to "content".
756         (save_config_cache): Do not exit after configuring when using
757         checksums (the default) instead of timestamps.
758
759 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
760
761         * SConstruct: Further development.
762
763         * input/test/SConscript: 
764         * input/template/SConscript: 
765         * input/regression/SConscript: 
766         * Documentation/bibliography/SConscript:
767         * Documentation/bibliography/index.html.in: New file.
768
769         * Documentation/bibliography/GNUmakefile (local-WWW): Remove index
770         generation.
771
772         * buildscripts/builder.py: Add new builders.
773
774         * make/stepmake.make: 
775         * stepmake/stepmake/*.make: 
776         * configure.in:
777         * lily/*:
778         * flower*: Use config.hh (Was config.h).
779
780         * scm/encoding.scm (get-coding): Print friendly error message when
781         no encoding is found, rather than crashing.
782
783 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
784
785         * lily/new-slur.cc (score_slopes): strong sloping score only when
786         stems point in same dir. 
787
788 2004-07-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
789
790         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo): bugfix
791         for beam start.
792
793         * lily/parser.yy (context_prop_spec): check grob name for
794         alphanumericness..
795
796         * lily/lyric-engraver.cc: creates LyricText objects
797
798 2004-07-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
799
800         * lily/include/lily-guile.hh (scm_from_int): add scm_from_int glue.
801
802 2004-07-13  Jan Nieuwenhuizen  <janneke@gnu.org>
803
804         * SConstruct: Configure only pristine build tree or on user
805         request.  Cleanups.  Add Documentation/topdocs to subdirs.
806         Use checksums instead of timestamps.
807         (CheckYYCurrentBuffer): Return result.
808
809         * Documentation/topdocs/SConscript: New file.
810
811 2004-07-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
812
813         * lily/staff-symbol-referencer.cc (on_staffline): bugfix 
814
815         * lily/scm-hash.cc (get): SCM_MAKINUM is deprecated. Use
816         scm_from_int instead.
817
818 2004-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
819
820         * SConstruct: Updates.  Add targets: tar, dist, release.
821
822 2004-07-11  Jan Nieuwenhuizen  <janneke@gnu.org>
823
824         * input/mutopia-header.ly: Generate output.
825
826         * SConstruct:
827         * buildscripts/builder.py:
828         * Documentation/user/SConscript: SCons fixes.
829
830 2004-07-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
831
832         * lily/new-slur.cc (class New_slur): new file. Score based slur
833         computations.
834
835 2004-07-10  Jan Nieuwenhuizen  <janneke@gnu.org>
836
837         * mf/SConscript: Remove Builders.
838
839         * buildscripts/builder.py: Add LilyPond, Abc2ly and MF builders.
840
841         * input/SConscript: 
842         * Documentation/user/SConscript: New file.
843
844 2004-07-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
845
846         * Documentation/topdocs/NEWS.texi (Top): add note about new
847         emacs electric-|
848
849         * scm/*.scm: adapt ly:warn calls.
850
851         * lily/lily-guile.cc (LY_DEFINE): use format on ly:warn arguments.
852
853         * lily/repeat-acknowledge-engraver.cc (process_music): look at
854         main timing, not grace timing. Fixes volta-repeat-grace.
855
856         * lily/kpath.cc (LY_DEFINE): ly:kpathsea-expand-path, new function
857         remove ly:kpathsea-gulp-file.
858
859         * scm/translation-functions.scm (format-metronome-markup): make
860         note smaller, align to bottom.
861
862         * scm/define-grobs.scm (all-grob-descriptions): metronome fixes.
863
864         * lily/metronome-engraver.cc (stop_translation_timestep): attach
865         metronome to musical column. Don't ack time sigs or bar lines.
866
867 2004-07-10  Heikki Junes  <hjunes@cc.hut.fi>
868
869         * THANKS: sort, add David. Kristof contributed code, he is a
870         contributor.
871
872 2004-07-09  David Svoboda      <svoboda@cmu.edu>
873
874         * elisp/lilypond-mode.el,
875         * elisp/lilypond-what-beat.el: Added LilyPond-what-beat function to
876         count beats between last measure stop | and point in emacs.
877         
878 2004-07-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
879
880         * tex/GNUmakefile (TEX_FILES): don't dist
881         music-drawing-routines.ps, latin1.enc 
882
883         * scripts/lilypond.py (include_path): remove --no-lily, --no-ps ,
884         --no-pdf, --pdftex
885         (copyright): add --latex option
886         (ic_p.make_include_option): use direct PS as default.
887
888         * scm/beam.scm (check-slope-callbacks): check sign of slope. 
889
890         * input/regression/beam-concave.ly (rossFourBeams): add cases from Ross
891
892         * scm/script.scm (default-script-alist): marcato should follow
893         into staff
894         
895 2004-07-09  Jan Nieuwenhuizen  <janneke@gnu.org>
896
897         * buildscripts/builder.py:
898         
899         * Documentation/SConscript (outdir): New file.  Add *list.ly
900         dependencies.  Fixes PDF doc build.
901
902 2004-07-08  Jan Nieuwenhuizen  <janneke@gnu.org>
903
904         * SConstruct: Add Tar target (incomplete), fix install issues, fix
905         run from build-dir.
906
907         * ly/SConscript:
908         * scm/SConscript: New file.
909
910         * lily/main.cc (dir_info): Print variables in sh format.
911
912         * lily/includable-lexer.cc: Use #if iso #ifdef for HAVE_ tests.
913
914         * mf/SConscript: Update multiple target rules.
915
916         * SConstruct (assert_version): Add.
917
918 2004-07-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
919
920         * SConstruct (key): add HAVE_FLEXLEXER_YY_CURRENT_BUFFER check.
921
922 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
923
924         * buildscripts/mf-to-table.py: Do not try to open ''.
925
926         * mf/SConscript: New file.
927
928 2004-07-06  Carl Sorensen  <carldsorensen@comcast.net>
929
930         * scm/fret-diagrams.scm : Convert many properties to constants,
931         reducing the pollution of the property namespace.
932
933         * scm/define-grob-properties.scm (all-user-grob-properties): Reduce
934         unnecessary properties for fret-diagram
935
936         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add symbols
937         for interface
938
939 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
940
941         * SConstruct: Update.
942
943 2004-07-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
944
945         * input/regression/beam-quant-standard.ly (seconds): print desired
946         quants when failing.
947
948 2004-07-06  Jan Nieuwenhuizen  <janneke@gnu.org>
949
950         * SConstruct:
951         * flower/SConscript:
952         * lily/SConscript: New file.
953
954 2004-07-05  Carl Sorensen  <carldsorensen@comcast.net>
955
956         * scm/define-grob-properties.scm (all-user-grob-properties): Add
957         descriptions for all fret-diagram properties.
958
959         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add
960         fret-diagram interface code
961
962 2004-07-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
963
964         * ly/book-paper-defaults.ly: set default encoding to ec.
965
966         * buildscripts/guile-gnome.sh (OPT): only compile pango if not
967         installed.
968
969         * tex/latin1.enc: new file, from a2ps. 
970
971 2004-07-06  Heikki Junes  <hjunes@cc.hut.fi>
972
973         * stepmake/bin/add-html-footer.py: use <div> instead of <table>,
974         add a faint, green border line.
975
976         * Documentation/index.html.in: drop <table>, add a faint border line.
977
978 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
979
980         * scm/font.scm (add-cmr-fonts): upright caps is eccc.
981
982         * Documentation/GNUmakefile (README_TOP_FILES): add THANKS.txt.
983
984 2004-07-02  Carl Sorensen  <carldsorensen@comcast.net>
985
986         * scm/output-ps.scm (white-text): Add scale paramter to allow scaling
987
988         * scm/output-tex.scm (white-text): Add scale parameter to allow font scaling
989
990         * scm/stencil.scm (fontify-text-white) : Adjust to better center, properly
991         scale white text
992
993         * scm/fret-diagrams.scm (make-fret-diagram): change default dot
994         position for numbered dots so dot will touch fret.
995         (various routines): move to font-metric interface, rather than
996         name, size interface.  Clean up comments.
997
998         * ps/music-drawing-routines.ps: (/draw_white_text)  Adjust font
999         size and offset to better center white text.
1000
1001 2004-07-05  Jan Nieuwenhuizen  <janneke@gnu.org>
1002
1003         * ChangeLog: Remove pre-2.1 changes.
1004
1005         * Documentation/misc/ChangeLog-2.1: New file.
1006
1007         * stepmake/bin/release.py: Cleanup.  Add release marker if missing
1008         from ChangeLog.
1009
1010 2004-07-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1011
1012         * input/test/chords-below-volta-bracket.ly,
1013         input/test/no-key-at-end-of-line.ly: New example files (FAQs)
1014
1015 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1016
1017         * VERSION: release 2.3.6
1018
1019         * input/regression/beam-quant-standard.ly: new file: test standard
1020         beam quants.
1021
1022         * scm/beam.scm (check-quant-callbacks): new function
1023         (check-beam-quant): new function: check whether current beam
1024         quants match argument.
1025
1026         * lily/beam-quanting.cc (score_forbidden_quants): fix problem with
1027         forbidden quant for sitting (upstem)/hanging (downstem) on outer
1028         staffline line.
1029
1030 2004-07-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1031
1032         * lily/parser.yy (Generic_prefix_music_scm): add (scm,scm) music
1033         functions.
1034
1035         * lily/note-collision.cc (do_shifts): align colliding notes to
1036         their leftmost note.
1037
1038         * input/regression/collision-alignment.ly: new file.
1039
1040         * ly/init.ly: don't print gc stats.
1041
1042         * scripts/lilypond-book.py (Lilypond_snippet.output_texinfo): add
1043         extra newline
1044
1045         * scm/define-grobs.scm (all-grob-descriptions): use (0 . 0) not #f
1046         for dimensions. This fixes ottava-remove-empty-staff.ly
1047
1048         * input/regression/lyrics-tenor-clef.ly: new file.
1049
1050         * lily/axis-group-engraver.cc (process_acknowledged_grobs): catch
1051         cyclic parents when two axis-group-engravers are
1052         present. Fixes: crash-axis-group-engraver.ly. 
1053         
1054         * input/test/volta-chord-names.ly: new file.
1055
1056         * scm/define-context-properties.scm
1057         (all-user-translation-properties): change voltaOnThisStaff
1058         definition. 
1059
1060         * lily/volta-engraver.cc (stop_translation_timestep): set bounds
1061         if necessary.
1062
1063         * lily/volta-bracket.cc (print): handle volta brackets without
1064         bars. 
1065
1066 2004-07-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1067
1068         * scripts/abc2ly.py (try_parse_chord_delims): Bugfix: update to
1069         2.0 chord syntax.  Ouch.  (thanks Dave Phillips).
1070
1071 2004-07-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1072
1073         * scm/output-gnome.scm: updated instructions for running gnome
1074         backend
1075
1076 2004-06-29  Carl Sorensen  <carldsorensen@attbi.net>
1077
1078         * scm/fret-diagrams.scm (draw-dots): default values for dot size
1079         and dot-position now depend on finger-code value; in-dot makes
1080         dots larger and centered.
1081         (draw-barre): added straight-barre indicator option
1082         (draw-dots): made fontify-text-white work.
1083
1084         * music-drawing-routines.ps: added /draw_white_text
1085
1086         * scm/output-tex.scm:  added white-text
1087
1088         * scm/output-ps.scm:  added white-text
1089
1090         * scm/lily.scm (ly:all-stencil-expressions): Added white-text to 
1091         list of stencil expressions
1092
1093         * scm/stencil.scm: Added fontify-text-white
1094
1095 2004-06-29  Heikki Junes  <hjunes@cc.hut.fi>
1096
1097         * input/regression/+.ly: use @unnumbered section.
1098
1099 2004-06-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1100
1101         * elisp/lilypond-mode.el (LilyPond-guile): set current module to
1102         (*anonymous-ly-0*) iso. (*anonymous-ly-1*)
1103
1104 2004-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1105
1106         * buildscripts/guile-gnome.sh (PATH): GUILE CVS is still fubarred.
1107
1108 2004-06-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1109
1110         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
1111         was causing an error. (was not actually commited in 2004-06-20)
1112
1113         * input/regression/lily-in-scheme.ly (withPaddingC): does not
1114         breaks anymore
1115
1116 2004-06-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1117
1118         * VERSION: 2.3.5 released.
1119         
1120         * lily/my-lily-parser.cc (parse_string): switch module too.
1121
1122 2004-06-24  Jan Nieuwenhuizen  <janneke@gnu.org>
1123
1124         * Documentation/topdocs/INSTALL.texi (Top): Add guile, python and
1125         ec-fonts-mftraced to running requirements.
1126
1127 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1128
1129         * lily/my-lily-lexer.cc (My_lily_lexer): copy scopes so temporary
1130         assignments don't reach the original file.
1131
1132         * lily/my-lily-parser.cc (My_lily_parser): only copy lexer if it
1133         exists
1134
1135 2004-06-22  Jan Nieuwenhuizen  <janneke@gnu.org>
1136
1137         * scm/output-gnome.scm: 
1138         * buildscripts/guile-gnome.sh: Update wrt fixed GUILE CVS.
1139
1140         * debian/: Apply Debian patch (Anthony Fok).
1141
1142 2004-06-22  Heikki Junes   <hjunes@cc.hut.fi>
1143
1144         * Documentation/user/music-glossary.tely: fix titling; @top is already
1145         an @unnumbered @chapter.
1146
1147 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1148
1149         * debian/GNUmakefile (EXTRA_DIST_FILES):
1150         (CONF_FILES): update file list.
1151
1152         * lily/stencil.cc (interpret_stencil_expression): bugfix.
1153
1154 2004-06-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1155
1156         * debian/: Remove cruft (requested Anthony Fok.)
1157
1158         * buildscripts/guile-gnome.sh: Build without gcc libtool version
1159         juggling.
1160
1161         * scm/framework-gnome.scm: Cleanups.  Resurrect +/- canvas scaling.
1162         Add popup menu with grob properties.
1163
1164         * lily/grob-scheme.cc (ly:grob-properties):
1165         (ly:grob-basic-properties): New function.
1166
1167         * lily/stencil.cc (interpret_stencil_expression): Comment-out
1168         "no-origin" call.  Fixes -fps output.
1169
1170         * scm/output-ps.scm (no-origin): Add dummy implementation.
1171
1172         * scm/output-gnome.scm (define-origin): Remove
1173         (grob-cause): Add.
1174
1175         * scm/output-ps.scm (scm):
1176         * scm/output-tex.scm (scm): Remove define-origin from exports list.
1177         (define-origin): Remove.
1178
1179         * scm/output-gnome.scm (define-origin): 
1180
1181         * scm/lily.scm (ly:all-output-backend-commands): Remove
1182         define-origin.  Add grob-cause.
1183
1184 2004-06-21  Heikki Junes   <hjunes@cc.hut.fi>
1185
1186         * buildscripts/lilypond-words.py: add ly/portugues.ly.
1187
1188 2004-06-20  Heikki Junes   <hjunes@cc.hut.fi>
1189
1190         * Documentation/user/GNUmakefile:
1191         * stepmake/stepmake/texinfo-rules: add Cascading Style Sheet using
1192         --include-css=.../texinfo.css; command includes css into the html.
1193
1194         * Documentation/texinfo.css: add file.
1195         define <hr> as black and thin.            
1196
1197 2004-06-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1198
1199         * lily/stencil.cc (interpret_stencil_expression): add grob-cause
1200         stencil expression. Junk define-origin.
1201
1202         * lily/my-lily-parser.cc (parse_string): init parser variable when
1203         lexer_ is set, ie. in parse_string and parse_file.
1204
1205         * lily/book.cc (LY_DEFINE): new function. ly:make-book. Supercedes
1206         ly:score-bookify.
1207
1208         * scm/lily.scm (collect-scores-for-book): new function.
1209
1210         * ly/init.ly: print collected scores/musics.
1211
1212         * lily/my-lily-parser.cc (LY_DEFINE): define parser in parser
1213         scope, not in lily module.
1214
1215         * lily/book.cc (LY_DEFINE): ly:make-book. New function.
1216
1217         * configure.in (PKG_CONFIG_PATH): add --enable-gui flag, and
1218         encapsulate gtk/pango tests.
1219
1220         * po/tr.po: Turkish translation.
1221
1222 2004-06-20  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1223
1224         * input/regression/lily-in-scheme.ly: regression test for #{
1225         ... #} syntax
1226
1227         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
1228         was causing an error.
1229
1230         * Documentation/user/programming-interface.itely (Using LilyPond
1231         syntax inside Scheme): documentation for #{ ... #} syntax.
1232
1233 2004-06-19  Heikki Junes  <hjunes@cc.hut.fi> 
1234
1235         * Documentation/index.html.in: use black thin <hr>.
1236
1237         * buildscripts/mutopia-index.py: use thin black <hr>.
1238
1239 2004-06-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1240
1241         * scm/fret-diagrams.scm: Use UNIX style line endings.
1242         (fret-diagram-verbose): A couple of @{VAR} and an closing itemize
1243         typo.  Fixes compile.
1244
1245         * scm/output-ps.scm (white-dot): Remove second incarnation.
1246
1247         * scm/lily.scm (ly:all-stencil-expressions): Add white-dot.
1248
1249 2004-06-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1250
1251         * scripts/lilypond.py (ic_p.make_include_option): set error_p for
1252         single file error.
1253
1254         * lily/bar-line.cc (compound_barline): add support for unbroken ||:
1255
1256 2004-06-17  Carl Sorensen (carl_sorensen@byu.edu)
1257
1258         * scm/fret-diagrams.scm: added fret-diagram-terse interface;
1259         remove size as argument to fret-diagram interface;
1260         improved white-circle dots for fret;
1261         improved top-fret thick line/
1262
1263         * scm/output-ps.scm: added white-dot function
1264
1265         * scm/output-tex.scm: added white-dot function
1266
1267         * tex/music-drawing-routines.ps: added draw_white_dot function
1268
1269         * ps/music-drawing-routines.ps: added draw_white_dot function
1270
1271         * input/test/fret-diagram.ly: examples to show multiple
1272         functions and multiple interfaces
1273
1274 2004-06-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1275
1276         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph) 
1277         (pango_fc_afm_get_charset): Update iaw Pango CVS update.
1278
1279         * buildscripts/guile-gnome.sh: Add pango to recipe.  Resolve
1280         conflict.  Have I told you lately how much I love autotools?
1281
1282 2004-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1283
1284         * lily/lily-guile.cc: 
1285         * lily/pangofc-afm-decoder.cc:
1286         * lily/include/pangofc-afm-decoder.hh: Use #if HAVE_* iso #ifdef.
1287         Fixes build without Pango CVS.  Use "pangofc-afm-decoder.hh".
1288
1289         * Documentation/topdocs/NEWS.texi (Top): Mention GNOME backend for
1290         developers.
1291
1292         * lily/paper-outputter.cc (file): New method.
1293         (dump_string): Use it.
1294
1295         * scm/output-gnome.scm: Update with pango CVS info, lilylib
1296         musing.
1297
1298         * lily/accidental-engraver.cc: Bugfix: (do not sort lines if one
1299         of them has a comma :-).
1300
1301         * scm/framework-gnome.scm: Add pango decoders.
1302
1303         * lily/include/pangofc-afm-decoder.hh: 
1304         * lily/pangofc-afm-decoder.cc: New file.
1305
1306         * lily/lily-guile.cc (ly:pango-add-afm-decoder): New function.
1307
1308         * configure.in: Check for pango.
1309
1310         * stepmake/aclocal.m4 (PKG_CHECK_MODULES): New function (from
1311         autoconf).
1312         (STEPMAKE_GTK2, STEPMAKE_PANGO): New function.
1313
1314         * config.make.in (USER_CFLAGS, USER_LDLAGS): Update.
1315
1316 2004-06-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1317
1318         * Documentation/user/tutorial.itely (Integrating text and music):
1319         fix grammar & punctuation.
1320
1321 2004-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1322
1323         * lily/: Stray janitorial cleanups.
1324
1325         * scm/lily.scm (ly:all-stencil-expressions):
1326         * scm/lily.scm (ly:all-output-backend-commands): New function.
1327
1328         * scm/safe-lily.scm (safe-objects): Add them.
1329
1330         * scm/framework-gnome.scm (<gnome-outputter>): New class.
1331
1332         * scm/output-gnome.scm: Move non-stencil evaluators to framework.
1333
1334 2004-06-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1335
1336         * buildscripts/guile-gnome.sh: Pick-up user-installed pango.
1337
1338 2004-06-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1339
1340         * scm/page-layout.scm (default-page-make-stencil): add
1341         raggedbottom, raggedlastbottom.
1342
1343         * Documentation/user/changing-defaults.itely (Page layout): add doc.
1344
1345         * scm/framework-tex.scm (define-fonts): fix export of
1346         papersize.
1347
1348         * lily/paper-book.cc (classic_output): strip suffixes from
1349         framework functions.
1350
1351         * lily/tuplet-bracket.cc (before_line_breaking): do not return
1352         SCM_UNDEFINED to Scheme.
1353
1354 2004-06-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1355
1356         * lily/book.cc: remove Book::to_stencil().
1357         (process): whoops. Score::book_rendering returns vector, not list.
1358
1359         * scripts/convert-ly.py (conv): remove \notes.
1360         apply to input examples.
1361
1362         * lily/paper-outputter.cc (output_stencil): don't use
1363         smobify_self() but self_scm()
1364
1365         * lily/include/ly-smobs.icc (IMPLEMENT_SMOBS): don't return SCM
1366         from smobify_self().
1367
1368         * lily/paper-book.cc (output): load framework module
1369         scm_c_resolve_module().
1370
1371         * python/lilylib.py (exit): exit with argument i.
1372
1373 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1374
1375         * scm/framework-gnome.scm (output-framework-gnome): Try loading
1376         gnome modules from non-toplevel.
1377
1378         * lily/ly-module.cc (ly:import-module): Export to ly:.
1379
1380         * lily/paper-score.cc (process): Do not show progress newline.
1381
1382         * lily/paper-book.cc (output, classic_output): Show progess
1383         newline after score.
1384
1385 2004-06-14  Heikki Junes <hjunes@cc.hut.fi>
1386
1387         * buildscripts/lilypond-words.py: add ly/vlaams.ly
1388
1389 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1390
1391         * lily/score.cc (ly:run-translator): Do not crash on empty music
1392         list.
1393
1394         * lily/book.cc (process): Do not render score when systems is empty.
1395
1396         * input/simple-song.ly: Down one octave.
1397
1398         * scm/output-gnome.scm: Remove script again; re-add modules fix
1399         (CVS conflict resolve?)
1400
1401         * lily/stencil.cc (ly:interpret-stencil): Was:
1402         interpret_stencil_expression.
1403
1404 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1405
1406         * buildscripts/guile-gnome.sh: New file.
1407
1408         * scm/output-gnome.scm: White background, better window size, sane
1409         canvas size.  Cleanups.
1410
1411 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1412
1413         * VERSION: release 2.3.4
1414
1415         * Documentation/user/invoking.itexi (Invoking the lilypond
1416         binary): document --safe.
1417
1418         * scm/output-gnome.scm: set PATH in script.
1419
1420         * scm/page-layout.scm (default-page-make-stencil): don't stretch
1421         if there is too few systems on a page.
1422
1423         * lily/parser.yy (relative_music): start at middle C without pitch
1424         argument.
1425
1426         * Documentation/user/changing-defaults.itely (Page layout): new node.
1427         (Paper size): rename node
1428         (Page breaking): new node.
1429         (Titling): move from invoking.
1430         (File structure): new node.
1431
1432         * lily/parser.yy (score_body): allow \header and music anywhere in
1433         \score body.
1434
1435 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1436
1437         * scm/lily.scm (ly:load): Remove page-breaking.scm.
1438
1439 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1440
1441         * lily/include/paper-system.hh: move cc/hh file from paper-line.*
1442
1443         * lily/include/paper-line.hh: rename to Paper_system.
1444
1445         * lily/include/paper-book.hh: doc class.
1446
1447         * lily/paper-book.cc (c_ragged_page_breaks): remove functions. 
1448
1449         * scm/page-layout.scm (plain-footer): add tagline/copyright. 
1450         (plain-header): add instrument-name.
1451         (default-page-make-stencil): bugfixes.
1452
1453         * lily/parser.yy (book_body): allow \header anywhere in \book{}
1454
1455         * lily/paper-book.cc: remove copyright & tagline. Remove
1456         interactions with Page
1457
1458         * scm/page-layout.scm (ly:optimal-page-breaks): move back breaking
1459         here, 
1460         (default-page-make-stencil): new function
1461         (default-page-music-height): new function
1462         (page-headfoot): new function
1463         (ly:optimal-page-breaks): generate stencils directly from here
1464
1465         * scm/titling.scm: new file, group titling functions
1466
1467 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1468
1469         * scm/output-gnome.scm: Handle multiple pages.
1470
1471         * scm/framework-gnome.scm: Do not load output-gnome.
1472         (framework-gnome): Invoke output-gnome::header and
1473         output-gnome::end-output as faked stencils.  Fixes experimental
1474         gnome output.
1475
1476 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1477
1478         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo):
1479         octavation compatibility fixes. Backportme. 
1480
1481         * scm/page-breaking.scm (ly:optimal-page-breaks): allow overfull
1482         pages.
1483         (ly:optimal-page-breaks): combine-penalties: no shortcut for
1484         negative. Now we handle negative penalties (ie. \pageBreak)
1485         correctly.
1486
1487         * lily/system.cc (get_line): extract page-penalty from the left
1488         bound.
1489
1490         * scm/fret-diagrams.scm (fret-diagram): use @table for documentation
1491
1492 2004-06-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1493
1494         * scm/framework-ps.scm: don't load output-XXX from framework-XXX
1495
1496 2004-06-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1497
1498         * scm/output-gnome.scm: Update script.  Move development to
1499         lilypond_2_3_2 branch for now.
1500
1501 2004-06-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1502
1503         * scm/page-breaking.scm (ly:optimal-page-breaks): don't do
1504         negative penalties.
1505         cleanups.
1506
1507         * Documentation/user/changing-defaults.itely (Creating contexts):
1508         index entries
1509
1510         * scm/page-breaking.scm (ly:optimal-page-breaks): new
1511         file. Rewrite function. 
1512
1513         * lily/paper-book.cc (pages): new interface: page-breaking returns
1514         list of line-list.
1515
1516         * lily/page.cc (Page): take lines argument.
1517
1518         * scm/document-translation.scm (all-engravers-doc): link to user man
1519
1520         * scm/page-layout.scm (ly:optimal-page-breaks): use penalty iso. score.
1521
1522         * Documentation/user/notation.itely (Relative octaves): typo.
1523
1524         * lily/paper-book.cc (LY_DEFINE): ly:output-formats. New function.
1525
1526 2004-06-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1527
1528         * scm/output-gnome.scm: Update build script.
1529
1530 2004-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
1531
1532         * scm/output-gnome.scm: Add font scaling.  Attempt to resurrect
1533         gnome backend.
1534
1535         * scm/framework-gnome.scm: New file.
1536
1537         * scm/lily.scm: Use it.
1538
1539         * lily/paper-outputter.cc: Janitorial cleanups.
1540         (ly:outputter-dump-string): Remove unreachable statement.
1541
1542         * scm/framework-ps.scm: Add header.  Janitorial cleanups.
1543         (ice-9): Bugfix: Add srfi-1.
1544
1545         * scm/framework-tex.scm: Add header.  Janitorial cleanups.
1546
1547 2004-06-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1548
1549         * lily/new-lyric-combine-music-iterator.cc (do_quit): put warning
1550         in do_quit()
1551
1552 2004-06-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1553
1554         * ly/book-paper-defaults.ly: set optimal-page-breaks as default
1555
1556 2004-06-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1557
1558         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1559         override of Beam::position-callbacks. Why would grace beams not be
1560         quantized? Fixes: weird-stem-size-grace. 
1561
1562         * lily/new-lyric-combine-music-iterator.cc (find_voice): issue
1563         warning only once. Backportme.
1564
1565         * lily/accidental-engraver.cc (number_accidentals_from_sig):
1566         bugfix, 2nd try. Backportme.
1567
1568         * ly/vlaams.ly: new file. (Thanks Hendrik Maryns)
1569
1570 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1571
1572         * Documentation/user/notation.itely (Instrument transpositions):
1573         Correct the name of the instrumentTransposition property.
1574
1575 2004-06-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1576
1577         * scm/output-ps.scm (ps-font-command): fix parmesan coding too.
1578
1579 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1580
1581         * scripts/lilypond-book.py (output): Bug fix so preLilyPondExample
1582         and postLilyPondExample are called when defined.
1583
1584 2004-06-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1585
1586         * ly/nederlands.ly (pitchnames): use ly:parser-set-note-names.
1587         This fixes setting notenames with `\include "nederlands.ly" '
1588
1589         * lily/my-lily-parser.cc (LY_DEFINE): ly:parser-set-note-names:
1590         new function.
1591
1592 2004-06-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1593
1594         * scm/page-layout.scm: don't do piece, it should be in score-title
1595         only.
1596
1597         * lily/lexer.ll: lex \score separately.
1598
1599         * lily/paper-book.cc: junk stencil2line.
1600
1601         * lily/paper-line.cc (Paper_line): construct from Stencil
1602         directly. No futzing with the dimensions.
1603
1604         * lily/include/paper-line.hh (class Paper_line): 
1605
1606         * lily/stencil.cc (interpret_stencil_expression): combine-stencil
1607         takes arbitrary number of arguments.
1608
1609         * input/test/markup-score.ly (tuning): simplify example. 
1610
1611 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1612
1613         * lily/score.cc (LY_DEFINE): ly:score-embedded-format, new function. 
1614
1615         * scm/define-markup-commands.scm (score): define score-markup
1616
1617         * lily/parser.yy (markup): use score-markup.
1618
1619         * lily/score.cc: add ly:score? 
1620
1621 2004-05-30  Carl Sorensen <carl_sorensen@byu.edu>
1622
1623         * scm/fret-diagrams.scm: add fret-diagram-verbose markup; modified
1624         fret-parse-string so it prepares for calls to fret-diagram-verbose
1625         Changed display constants to props so they are available for
1626         \override.
1627
1628 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1629
1630         * VERSION: release 2.3.3
1631
1632         * stepmake/stepmake/generic-vars.make: unset LANG.
1633
1634         * input/regression/tuplet-nest.ly: bugfix.
1635
1636         * lily/tie-performer.cc (stop_translation_timestep): reset
1637         ties_created_. Fixes: midi-tie.ly, midi-lyrics-barcheck.ly
1638
1639         * lily/chord-tremolo-engraver.cc (stop_translation_timestep):
1640         clear repeat_ directly after setting stem_tremolo_. Fixes:
1641         tremolo-repeat.ly
1642
1643         * input/regression/span-bar-break.ly: new file.
1644
1645         * scm/define-grobs.scm (all-grob-descriptions): remove
1646         break-visibility from SpanBar. Fixes: piano-repeat.ly
1647
1648 2004-05-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1649
1650         * python/lilylib.py (make_ps_images): only compute bbox when needed.
1651
1652         * scripts/lilypond-book.py (process_snippets): use lily -f ps
1653         files for generating pngs. (failed experiment)
1654
1655         * scm/framework-ps.scm (output-classic-framework-ps): dump EPS
1656         file with PFA fonts included.
1657
1658         * lily/score.cc (default_rendering): put header in too.
1659
1660         * lily/paper-line.cc (LY_DEFINE): change function to
1661         ly:paper-line-extent
1662
1663         * scm/page-layout.scm (default-book-title): only add lines for
1664         non-nil fields.
1665         (default-score-title): idem.
1666
1667         * lily/my-lily-parser.cc (parse_string): delete lexer after use.
1668
1669         * lily/my-lily-lexer.cc (My_lily_lexer): copy keytable.
1670
1671         * lily/include/paper-book.hh (class Paper_book): remove height_
1672         member.
1673
1674         * input/test/coriolan-margin.ly (texidoc): remove latex macros.
1675
1676         * lily/ly-module.cc (LY_DEFINE): bugfix.
1677
1678         * lily/paper-book.cc (book_title): separate function for the book
1679         title.
1680
1681         * scm/page-layout.scm (default-book-title): only account for
1682         markup fields.
1683
1684         * scm/framework-ps.scm: new file. Move high level interface from
1685         output-ps.scm
1686
1687         * scm/music-functions.scm (def-grace-function): move macros from
1688         ly/music-functions-init.ly
1689
1690         * lily/paper-outputter.cc (Paper_outputter): move scheme_calls to
1691         framework-tex.scm
1692
1693         * scm/framework-tex.scm (dump-line): new file. High level
1694         interface for output (pages, systems, header). 
1695
1696         * lily/include/page.hh (class Page): add is_last_ field.
1697
1698         * lily/paper-outputter.cc (print_smob): smobify Paper_outputter.
1699
1700         * lily/paper-book.cc (split_string): new function
1701         (output): output multiple formats, i.e. --format=ps,tex
1702
1703         * scm/output-ps.scm (output-scopes): dump variables directly.
1704         (define-fonts): rewrite for new interface
1705
1706         * ps/lilyponddefs.ps: remove lilypondpaper redefinitions.
1707
1708         * lily/paper-outputter.cc (Paper_outputter): take format argument.
1709
1710         * lily/main.cc (parse_argv): don't set extension for output.
1711
1712         * lily/clef-engraver.cc (create_clef): remove
1713         Staff_symbol_referencer::set_position() call. 
1714
1715 2004-05-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1716
1717         * ly/music-functions-init.ly (addlyrics): set the 'origin property
1718         with the location argument in music function definitions.
1719
1720 2004-05-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1721
1722         * lily/staff-symbol-engraver.cc (acknowledge_grob): remove item ->
1723         staffsymbol dependency.
1724
1725         * lily/include/grob.hh (class Grob): live () -> is_live (). Small
1726         cleanups.
1727
1728         * lily/book.cc (process): return Paper_book
1729         (to_stencil): use Book::process().
1730
1731         * lily/include/my-lily-parser.hh (class My_lily_parser): remove
1732         header_ field. Store in $globalheader
1733
1734         * lily/parser.yy (book_body): book header is initted to
1735         $globalheader.
1736
1737
1738 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1739
1740         * input/test/fill-a4.ly: removed.
1741
1742         * lily/parser.yy (output_def): push scope of parent_ Output_def
1743         too.
1744
1745 2004-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1746
1747         * scm/output-gnome.scm: Update info.
1748
1749 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1750
1751         * lily/book-paper-def.cc: collapse Book_output_def to Output_def.
1752
1753         * scm/lily.scm (ly:modules-lookup): handle empty list, and more
1754         than 1 module.
1755
1756         * lily/include/ly-module.hh (ly_use_module): rename is_module to
1757         ly_c_module_p.
1758
1759         * scm/page-layout.scm (default-book-title): move Scheme titling
1760         functions to here.
1761
1762         * lily/parser.yy (book_paper_block): remove scope too.
1763
1764         * ly/engraver-init.ly (EasyNotation): remove OrchestralScoreContext
1765
1766         * lily/rest.cc: add direction to rest properties.
1767
1768         * lily/include/output-def.hh: new file, move from
1769         music-output-def.hh
1770
1771 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1772
1773         * scm/output-gnome.scm: Describe feta-cork hack.
1774
1775 2004-05-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1776
1777         * lily/include/book-paper-def.hh: derive from Output_def 
1778
1779         * lily/include/paper-def.hh: move all functionality out of class.
1780         Junk header.
1781
1782         * lily/include/music-output-def.hh: rename Music_output_def to
1783         Output_def.
1784
1785         * input/wilhelmus.ly: only set space for Paper formatting. 
1786
1787         * lily/include/midi-def.hh: remove file, remove class.
1788         Move functions to Music-output-def.
1789
1790         * lily/music-output-def.cc (Music_output_def): remove separate
1791         translator table. Lookup translators in scope directly. This
1792         obviates Context suffix for context identifiers, i.e.
1793
1794         \context {
1795           \Staff
1796           .. 
1797           }
1798
1799
1800         will work.
1801
1802
1803         * Documentation/user/notation.itely (Chords mode): typo: 13 -> 3.
1804
1805         * Documentation/user/changing-defaults.itely (Horizontal spacing):
1806         document spacing override hack.
1807
1808 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1809
1810         * scm/output-gnome.scm: Add C-q, C-w keybindings.  Update
1811         installation info.  Support point-and-click.  Add +/- zoom
1812         keybindings.
1813
1814 2004-05-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1815
1816         * VERSION: 2.3.2 released
1817
1818         * lily/parser.yy (book_body): set default bookpaper.
1819
1820         * scm/output-tex.scm (header): kludge: hard code linewidth. 
1821
1822         * lily/my-lily-parser.cc (My_lily_parser): don't delete lexer.
1823
1824 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1825
1826         * lily/score.cc (default_rendering): scale outputdef before
1827         starting.
1828
1829 2004-05-25  Jan Nieuwenhuizen  <janneke@gnu.org>
1830
1831         * scm/fret-diagrams.scm: Add header.
1832
1833         * scm/output-gnome.scm: Hello world :-)
1834
1835 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1836
1837         * scripts/lilypond.py (run_dvips): only add papersize if present.
1838
1839         * lily/accidental-engraver.cc (update_local_key_signature): new
1840         function, fold code from initialize() and process_music().
1841         (update_local_key_signature): use deep copy. This fixes one
1842         problem from custom-key-signatures.ly.
1843         (number_accidentals_from_sig): tighter check for
1844         accidental-too-old.
1845
1846         * ly/engraver-init.ly: remove localKeySignature
1847         definition from ChoirStaff, StaffGroup, Score.
1848
1849         * lily/percent-repeat-engraver.cc (try_music): add moments for
1850         barlines too. Fixes: skipbars-percent-repeat.ly.
1851
1852 2004-05-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1853
1854         * lily/context-def.cc (filter_performers): don't go to cdrloc if
1855         skipping last pair. Fixes: crash-bar-number.
1856
1857         * scm/fret-diagrams.scm (nil): fret-diagrams (courtesy Carl
1858         D. Sorensen)
1859
1860         * input/test/fret-diagram.ly: new file.
1861
1862         * scm/paper.scm (paper-set-staff-size): scale linewidth too.
1863         (scale-paper): divide by scale.
1864
1865 2004-05-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1866
1867         * lily/rest-collision.cc (do_shift): also do nothing for the (0,2)
1868         case.
1869
1870 2004-05-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1871
1872         * scm/stencil.scm (fontify-text): reinstate function
1873
1874         * tex/lily-ps-defs.tex: remove lilypondblotdiam def.
1875
1876         * lily/book-paper-def.cc (Book_paper_def): add copy ctor.
1877
1878         * lily/parser.yy (book_paper_head): \bookpaper {} 
1879
1880         * python/midi.c: remove config.h
1881
1882 2004-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1883
1884         * scm/output-gnome.scm: Update.
1885
1886 2004-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1887
1888         * scm/output-gnome.scm: New file.
1889
1890         * lily/include/book-paper-def.hh: Add.  Janitorial fixes.
1891
1892 2004-05-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1893
1894         * lily/book-paper-def.cc (ly_bookpaper_fonts): move from Paperdef
1895         (find_scaled_font): move from Paper_def
1896
1897 2004-05-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1898
1899         * lily/my-lily-parser.cc (LY_DEFINE): new function ly_parser_lookup
1900         (LY_DEFINE): add SCM_ASSERT_TYPE everywhere.
1901
1902         * po/fr.po: update po.
1903
1904         * lily/include/book-paper-def.hh (class Book_paper_def): new file.
1905
1906         * lily/book-paper-def.cc (print_smob): new file.
1907
1908 2004-05-16  Heikki Junes <hjunes@cc.hut.fi>
1909
1910         * buildscripts/lilypond-words.py: search words also from
1911         music-functions-init.ly.
1912
1913 2004-05-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1914
1915         * ly/music-functions-init.ly (def-music-function): new helper
1916         macro for defining music functions. \addlyrics \appoggiatura
1917         \acciaccatura \grace \partcombine \autochange \applycontext
1918         \applyoutput and \breathe are now defined here thanks to it.
1919
1920         * lily/parser.yy: 
1921         * lily/my-lily-lexer.cc: \addlyrics \appoggiatura \acciaccatura
1922         \grace \partcombine \autochange \applycontext \applyoutput and
1923         \breathe keywords removed from the parser.
1924
1925         * lily/parser.yy: 
1926         * lily/music-function.cc (ly_make_music_function): 
1927         * lily/lexer.ll (music_function_type): added a case for 0-arg
1928         music functions.
1929
1930 2004-05-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1931
1932         * scm/ly-from-scheme.scm (read-lily-expression):  A variable
1933         refering to a music expression can be used in lily-inside-scheme:
1934         #{ $music #}
1935
1936         * lily/my-lily-parser.cc (LY_DEFINE): introduce ly:clone-parser
1937         and ly:parser-define, and change ly:parser-parse-string in order
1938         to make #{ $music #} work.
1939
1940         * scm/new-markup.scm (compile-markup-expression): when an argument
1941         is a string, use `make-simple-markup'.
1942
1943 2004-05-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1944
1945         * lily/parser.yy (My_lily_lexer): bugfix; op should be tag.  
1946
1947 2004-05-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1948
1949         * scripts/convert-ly.py (FatalConversionError.func): handle + in
1950         font-size. (backportme)
1951
1952 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1953
1954         * lily/paper-outputter.cc (output_stencil): dump font definitions
1955         before each stencil.
1956
1957         * lily/include/paper-book.hh (struct Score_lines): new
1958         struct. Collect info per Paper-score.
1959
1960         * lily/include/page.hh (class Page): to_stencil() returns Stencil
1961         everywhere.
1962
1963         * lily/stencil.cc (find_expression_fonts): new function
1964
1965         * lily/paper-outputter.cc (output_stencil): use
1966         interpret_stencil_expr
1967
1968         * lily/stencil.cc (LY_DEFINE): ly_stencil_fonts: new function.
1969         (interpret_stencil_expr): new function. Generic stencil
1970         interpretation.
1971
1972         * lily/paper-def.cc (find_scaled_font): divide lookup
1973         magnification by outpuscale for non-virtual fontmetrics. This
1974         fixes ludicrously long font definitions for text
1975         fonts. (backportme)
1976
1977         * lily/score-engraver.cc: remove
1978         {Engraver,Score_engraver}::typeset_grob(), remove all calls.
1979
1980 2004-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
1981
1982         * input/test/markup-score.ly: Remove \notes.
1983
1984         * lily/parser.yy (book_body): Grok Composite_music and \header.
1985         (markup): Push NOTES mode before score_block.
1986
1987         * VERSION: release 2.3.1
1988
1989         * mf/feta-klef.mf: 
1990         * mf/feta-bolletjes.mf: Oops.  Comment-out canvast test code.
1991
1992         * Documentation/user/programming-interface.itely: Use @emph (was: @em).
1993
1994         * Documentation/user/out/tutorial.texi: Untrigger lilypond-book error.
1995
1996 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1997
1998         * scm/output-tex.scm (output-tex-string): tighten safe security.
1999
2000         * lily/scm-option.cc (LY_DEFINE): add 'safe to ly:get-option
2001
2002         * scm/safe-lily.scm (make-safe-lilypond-module): new file. Define
2003         allowed ly functions.
2004
2005         * lily/ly-module.cc (ly_module_define): only define variable if
2006         bound.
2007         (ly_make_anonymous_module): take safe option.
2008
2009 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2010
2011         * scripts/lilypond-book.py (compose_ly): remove FRAGMENT_LY.
2012
2013 2004-05-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2014
2015         * input/regression/newaddlyrics.ly: Fix.
2016
2017         * Documentation/user/tutorial.itely: Use \newlyrics, remove most
2018         \score \notes.
2019
2020 2004-05-08  Heikki Junes <hjunes@cc.hut.fi>
2021
2022         * Documentation/user/music-glossary.tely ([k-z]): last fixes.
2023
2024 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2025
2026         * input/mutopia/R.Schumann/romanze-op28-2.ly (d): use #(define .. )
2027
2028         * lily/paper-line.cc (Paper_line): don't store list of stencils,
2029         but convert to single Stencil immediately.
2030
2031         * lily/paper-book.cc (title): don't return Stencil* but Stencil.
2032
2033 2004-05-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2034
2035         * scm/output-sodipodi.scm: Resurrect sodipodi output.
2036
2037 2004-05-07  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
2038
2039         * elisp/lilypond-mode.el: Changed the way defaults are created for
2040         LilyPond-command-master.  LilyPond-mode will now check the
2041         timestamps of the files to see which command has to run next.
2042
2043 2004-05-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2044
2045         * scm/bass-figure.scm (format-bass-figure): don't set
2046         number-markup for strings. This fixes string in bass
2047         figure. (backportme)
2048
2049         * lily/parser.yy (bass_number): insert number-markup into figure
2050         definition.
2051
2052         * scm/define-music-properties.scm (all-music-properties): make
2053         'figure a markup.
2054
2055         * scripts/convert-ly.py (conv): \apply -> \applymusic
2056
2057 2004-05-06  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
2058
2059         * elisp/lilypond-mode.el: changed the order of some commands
2060         ("Midi" after "2Midi"), use the user-defined
2061         LilyPond-command-default as default instead of "LilyPond"
2062
2063         * elisp/lilypond-mode.el: added a LilyPond-master-file variable,
2064         to set the master file for the next command.
2065
2066         * elisp/lilypond-font-lock.el: replaced font-lock-warning-face
2067         with font-lock-reference-face.
2068
2069 2004-05-07  Heikki Junes <hjunes@cc.hut.fi>
2070
2071         * Documentation/user/music-glossary.tely ([ab]*): small fixes.
2072
2073         * Documentation/user/music-glossary.tely ([c-l]*): more fixes.
2074
2075 2004-05-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2076
2077         * ly/music-functions-init.ly (TODO): new file.
2078
2079         * lily/parser.yy (Generic_prefix_music_scm): add more
2080         music_function symbols.
2081         (Prefix_composite_music): change \apply to music-function   
2082
2083         * lily/include/music-function.hh: rename to music-function
2084
2085 2004-05-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2086
2087         * lily/music-head.cc (LY_DEFINE): change order of args.
2088
2089         * input/regression/music-head.ly (texidoc): new file.
2090
2091         * lily/parser.yy (Generic_prefix_music): allow generic
2092         music-transformation functions. 
2093
2094         * lily/include/music-head.hh (is_music_head): new file.
2095
2096         * lily/music-head.cc (get_music_head_transform): new file.
2097
2098 2004-05-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2099
2100         * lily/ottava-bracket.cc (print): use coordinate, not (0,0) for
2101         empty extent. This fixes ottava brackets on rests. (backportme)
2102
2103         * make/lilypond.redhat.spec.in (Group): ln png files for info.
2104
2105         * lily/piano-pedal-engraver.cc (create_text_grobs): core dump fix.
2106
2107         * cygwin/lily-wins.py: update for the lily-wins.py script.
2108
2109 2004-05-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2110
2111         * lily/score-engraver.cc (typeset_all): switch off unbound spanner
2112         code. This will obviate typeset_grob () in the future.  The effect
2113         of this is that improperly written spanner handling will result in
2114         invalid spanner bounds.
2115         (announce_grob): add to elems_ from here
2116         (typeset_grob): comment out.  
2117
2118         * lily/include/engraver.hh (make_spanner): new calling interface
2119         for make_{item,spanner}. This obviates most calls to
2120         announce_grob().
2121
2122         * scm/music-functions.scm (set-accidental-style): use GrandStaff
2123         iso. PianoStaff for piano styles.
2124
2125 2004-05-03  Heikki Junes <hjunes@cc.hut.fi>
2126
2127         * Documentation/user/music-glossary.tely: add segno after d.s.
2128
2129 2004-05-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2130
2131         * lily/include/audio-column.hh: remove unused variables.
2132         (patch by Michael Welsh Duggan)
2133
2134         * flower/include/axes.hh (other_axis): inline Axes function
2135         (thanks to David Brandon).
2136
2137 2004-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2138
2139         * cygwin/mknetrel: Install image links (backportme).
2140
2141         * Documentation/user/GNUmakefile (local-install-info): Activate
2142         actual installing of image links (backportme).
2143
2144 2004-04-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2145
2146         * Documentation/user/notation.itely (Measure repeats): Removed
2147         unnecessary (and confusing) \context Voice{.
2148
2149 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
2150
2151         * Documentation/topdocs/NEWS.texi: Mention use of \score as markup.
2152
2153         * lily/page.cc (Page): Do not use ly_scheme_function for
2154         volatile/configurable variables (FIXME: better name).
2155
2156         * lily/music-output-def.cc (c_lookup_variable): Rename (WAS:
2157         get_scmvar).
2158
2159 2004-04-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2160
2161         * scripts/convert-ly.py (FatalConversionError.subst): use
2162         \transposition.
2163
2164 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
2165
2166         * lily/include/page.hh (class Page): Declare left_margin ().
2167
2168         * lily/page.cc: Remove paper var caching.
2169
2170 2004-04-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2171
2172         * Documentation/user/music-glossary.tely: Add name to @top node.
2173         Remove comment from @table definitions (workaround for makinfo
2174         bug).
2175
2176         * lily/stencil-scheme.cc (ly:stencil-expr): Rename (was:
2177         ly:stencil-get-expr).  Update callers.
2178         (ly:stencil-align-to!):  Return stencil too.
2179
2180         * lily/paper-outputter.cc (output_page): Bugfix.  Use page
2181         stencil.  Remove looped line-based page output.
2182         (output_line): Use line stencil.  Remove looped stencil-based line
2183         output.
2184
2185         * lily/page.cc (ly:page-paper-lines): New function.
2186
2187         * input/test/markup-score.ly: New file.
2188
2189         * scm/define-markup-commands.scm (stencil): New markup.
2190
2191         * lily/book.cc (to_stencil): New method.
2192
2193         * lily/parser.yy (markup): Use it to grok \score.
2194
2195 2004-04-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2196
2197         * lily/stencil.cc (expr): Rename (was: get_expr).  Update callers.
2198
2199         * lily/paper-book.cc (pages): Change signature.  Update callers.
2200
2201         * lily/include/page.hh:
2202         * lily/page.cc: New file.
2203
2204         * lily/paper-line.cc (to_stencil): New method.
2205
2206         * lily/paper-outputter.cc (output_stencil): New method.
2207
2208         * lily/paper-outputter.cc (output_line): Use them.
2209
2210         * lily/warn.cc: Remove.
2211
2212         * lily/my-lily-parser.cc (distill_inname): Remove.
2213
2214         * flower/include/file-name.hh: 
2215         * flower/file-name.cc: New file.  Update users.
2216
2217         * flower/file-path.cc [CYGWIN]: Junk testing code.  Remove Path.
2218         (find): New method of same name.
2219
2220         * lily/my-lily-parser.cc (ly:parse-file): Use it.
2221
2222         * lily/scm-option.cc (ly:set-option, ly:get-option): Bugfix:
2223         constant error message.
2224
2225 2004-04-27  Heikki Junes <hjunes@cc.hut.fi>
2226
2227         * input/test/{blank-notes.ly,staff-container.ly}: typos.
2228
2229 2004-04-26  Jan Nieuwenhuizen  <janneke@gnu.org>
2230
2231         * Documentation/user/music-glossary.tely: @table @strong' replaced
2232         by `@table @samp @c @strong'.  This fixes invalid makeinfo output
2233         (backportme).
2234
2235 2004-04-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2236
2237         * scm/lily.scm (ly:load): Add ly-from-scheme.scm loading.
2238
2239         * scm/ly-from-scheme.scm: New file. Introduce a new syntax:
2240         #{ lily music expression #} that returns an equivalent scheme
2241         music expression by parsing the string.
2242
2243 2004-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2244
2245         * lily/my-lily-parser.cc:
2246         * lily/my-lily-lexer.cc: Another step towards parsing ly code from
2247         SCM string (foo.ly/toto.scm support).
2248
2249 2004-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
2250
2251         * lily/my-lily-parser.cc (ly:parser-parse-string): New function.
2252
2253 2004-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
2254
2255         * input/regression/newaddlyrics.ly: Remove lilypond-book kludge.
2256
2257         * scripts/lilypond-book.py: LY code that includes \header is
2258         not assumed to be a fragment.
2259
2260 2004-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
2261
2262         * lily/stem-tremolo.cc (print): If stem direction == CENTER, move
2263         tremolo beams up.
2264
2265         * lily/stem.cc (chord_start_y): Return 0 if no heads.
2266         (get_default_stem_end_position): No tremolo head juggling if no
2267         heads.  Fixes tremolo crash on rests (backportme).
2268
2269         * scripts/abc2ly.py: Oops use [\]proper[ty] 2.2 syntax.
2270
2271 2004-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2272
2273         * scripts/abc2ly.py: ABC beams preserve support (courtesy Guy
2274         Gascoigne-Piggford).  Also: TAB and whitespace fixes.
2275
2276         * lily/lexer.ll: Allow \encoding in NOTES mode.
2277
2278         * buildscripts/mf-to-table.py (write_fontlist): Use \lyrics
2279         for lyrics, not for commands.
2280
2281         * lily/parser.yy (scalar): Bugfix: accept LYRICS_STRING.
2282         FIXME: Replace some `Music's with Grouped_music_list; fixes make web.
2283
2284         * input/regression/newaddlyrics.ly: New file.
2285
2286         * Documentation/topdocs/NEWS.texi: Update.
2287
2288         * lily/parser.yy (new_lyrics): Return SCM list of lyric musics.
2289         (Music_list): Allow embedded scm.
2290
2291         * lily/score.cc (ly:score-bookify): New function.
2292
2293         * lily/music.cc (ly:music-scorify): Idem.
2294
2295         * lily/my-lily-parser.cc (ly:parser-print-book): Idem.
2296         (ly:parser-print-score): Idem.
2297
2298         * scm/lily.scm (default-toplevel-book-handler): Idem.
2299         (default-toplevel-music-handler): Idem.
2300         (default-toplevel-score-handler): Idem.
2301
2302         * ly/declarations-init.ly: Set default toplevel handlers.
2303
2304         * lily/parser.yy (book_block, score_block, toplevel_music): Use them.
2305
2306         * scripts/lilypond-book.py (PREAMBLE_LY): Select classic score
2307         printer for score at toplevel.
2308
2309 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
2310
2311         * lily/parser.yy (NEWLYRICS): Switch to LYRICS mode for lyrics.
2312         Fix for simple case: input/simple-song.ly, more complex stuff
2313         does not work yet.
2314
2315 2004-04-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2316
2317         * lily/parser.yy (Prefix_composite_music): split Composite_music
2318         in Prefix_composite_music and Grouped_music_list.
2319         (re_rhythmed_music): use Grouped_music_list for NEWLYRICS.
2320
2321 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
2322
2323         * scm/lily.scm (toplevel-expression): New define.
2324
2325         * lily/my-lily-parser.cc (ly:parser-add-book-and-score): New function.
2326
2327         * lily/parser.yy (toplevel_expression): Use it.
2328
2329         * lily/include/my-lily-parser.hh: Smobbify.
2330
2331         * lily/my-lily-parser.cc (parse_string): New method.
2332
2333         * lily/my-lily-parser.cc (ly:parse-string): New function.
2334
2335         * Documentation/user/lilypond.tely: Add comment and workaround for
2336         gs-8.01 crash.  Fixes make web.
2337
2338         Simplification of toplevel music.
2339
2340         * lily/lexer.ll, lily/parser.yy:
2341
2342         * In LYRICS mode, return LYRICS_STRING.  This fixes one
2343         shift/reduce problem.
2344
2345         * Use NOTES mode at start of maininput.
2346
2347         * Grok toplevel composite music expression, put in score and book.
2348
2349         * Grok \relative COMPOSITE_MUSIC, make relative on middleC.
2350
2351         * \newlyrics is a shortcut for \context Lyrics \lyricsto "" \lyrics
2352
2353         * input/simple.ly: New file.
2354
2355         * input/simple-song.ly: Idem.
2356
2357 2004-04-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2358
2359         * lily/parser.yy: rename NEWADDLYRICS to LYRICSTO. Thanks to Erik
2360         Sandberg.
2361
2362 2004-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
2363
2364         * scm/font.scm (add-cmr-fonts): Narrow bold is ecrb.
2365
2366 2004-04-17  Heikki Junes <hjunes@cc.hut.fi>
2367
2368         * input/regression/accidental-octave.ly: doc automatic showing
2369         of note names.
2370
2371 2004-04-16  Heikki Junes <janneke@gnu.org>
2372
2373         * po/fi.po: do "make po && make -C po po-update" at top-level,
2374         then "cp po/out/fi.po po/fi.po" and update fields.
2375
2376         * po/fi.po: remove all designations of `fuzzy'; shows those elements.
2377
2378 2004-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2379
2380         * Documentation/user/introduction.itely (About this manual): Fix
2381         templates and regression urls (backportme).
2382
2383 2004-04-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2384
2385         * ly/engraver-init.ly (Score:graceSettings): Increase
2386         beamed-lengths, especially for 32nd notes.
2387
2388         * Documentation/user/notation.itely (Grace notes): Correct the
2389         syntax for add-grace-property example.
2390
2391 2004-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
2392
2393         * flower/parse-afm.cc [METATYPE1_BUG]: Grok Metatype1's global
2394         `Generated' tag.
2395
2396         * scm/font.scm (add-cmr-fonts): Use super-cm/lmodern fonts.  NOT.
2397         Severely broken (the Debian package, at least).
2398
2399 2004-04-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2400
2401         * lily/context.cc (find_create_context): assign to lvalue.
2402
2403 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2404
2405         * lily/include/translator.hh (class Translator): rename
2406         get_parent_context() to context () to avoid confusion.
2407
2408         * lily/include/lily-guile.hh: is_x -> ly_c_X_p naming.
2409
2410         * lily/lexer.ll: change is_string -> ly_c_string_p 
2411
2412         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): use \book.
2413
2414         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: use \book.
2415
2416 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2417
2418         * VERSION: release 2.3.0
2419
2420         * mf/feta-nummer-code.mf: use ascii names for number glyphs.
2421
2422         * buildscripts/mf-to-table.py (parse_logfile): only prepend group-
2423         if nonempty.
2424
2425         * lily/include/context.hh (class Context): make members protected.
2426         (children_contexts): new accessor function.
2427
2428         * lily/include/translator.hh (class Translator): make
2429         daddy_context_ protected.
2430         (class Translator): clean up. 
2431
2432         * lily/include/context.hh (class Context): make daddy_context_
2433         private.
2434
2435         * lily/lyric-engraver.cc (get_voice_to_lyrics): recursively go
2436         higher for finding Voice. (backportme)  
2437
2438         * lily/include/context.hh (class Context): remove
2439         find_context_below() as a method.
2440
2441         * Documentation/user/notation.itely (The Lyrics context): add note
2442         about manual durations
2443
2444         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use TeX-math
2445         encoding.
2446
2447         * scm/output-tex.scm (text): dump \inputencoding{} for text.
2448
2449 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2450
2451         * scripts/lilypond.py (global_latex_preamble): remove latin1 from
2452         \usepackage{inputenc}
2453
2454         * lily/paper-book.cc (classic_output): don't advance Offset for
2455         TeX output.
2456
2457         * make/mutopia-rules.make ($(outdir)-$(PAPERSIZE)/%.dvi): include
2458         ec-sauter.map in rules
2459
2460         * mf/ecb.mf (font_identifier): new file, based on ecbx
2461
2462         * mf/ecb10.mf (gensize): new file.
2463
2464         * Documentation/topdocs/NEWS.texi (Top): document some more new
2465         features.
2466
2467         * ly/declarations-init.ly: run convert-ly
2468
2469         * lily/my-lily-parser.cc (LY_DEFINE): move parse-file function
2470         from input-file-results. Remove input-file-results.* 
2471
2472 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2473
2474         * scm/output-ps.scm (font-command): Fix, again.
2475
2476         * input/test/title-markup.ly: Add \noPagebreak test.
2477
2478         * lily/score-engraver.cc (try_music): Bugfix.
2479
2480 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2481
2482         * lily/main.cc (main_with_guile): excise dependency options -M and
2483         --dep-prefix
2484
2485         * lily/input-file-results.cc: excise Makefile dependency code
2486
2487         * Documentation/user/invoking.itexi (Invoking the lilypond
2488         binary): remove dep doco
2489
2490         * lily/main.cc (main_with_guile): call lilypond-main
2491
2492         * scm/lily.scm (lilypond-main): new function: handle multiple files.
2493
2494         * lily/input-file-results.cc (LY_DEFINE): throw ly-file-failed
2495         exception.
2496
2497         * lily/my-lily-parser.cc: remove paper_description function
2498
2499         * lily/music-output-def.cc (LY_DEFINE): ly:output-description
2500         new function.
2501
2502         * lily/main.cc: remove global_score_count.
2503
2504         * lily/book.cc (process): don't take header from global_input_file.
2505
2506         * buildscripts/lilypond-profile.sh (Error): set GS_FONTPATH
2507
2508         * lily/parser.yy (My_lily_lexer): remove current_parser global var.
2509
2510         * lily/music-output-def.cc (LY_DEFINE): new function
2511         ly_output_description. This function does the bulk for  setting,
2512         parsing and breaking down of an input file.
2513
2514         * lily/ly-module.cc (ly_make_anonymous_module): don't protect
2515         anonymous modules globally. Let's hope they get GCd
2516
2517         * scripts/lilypond.py (run_dvips): add sauter-mftrace.map 
2518
2519 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2520
2521         * scm/output-ps.scm (header): Papersize from paper.
2522
2523         * scripts/lilypond.py (global_latex_preamble): Oldish behaviour
2524         for classic output.
2525
2526         * tex/lilyponddefs.tex (interscoreline): Oldish behaviour if
2527         lilypondclassic is defined.
2528         (lilypondstart): Oldish behaviour if lilypondclassic is defined.
2529
2530         * input/regression/between-systems.ly: Remove.
2531
2532         * python/lilylib.py (get_bbox): Fix regular expression
2533         for bounding box.
2534
2535         * tex/lilyponddefs.tex (lilypondpagebreak): New overridable macro.
2536
2537         * scm/output-tex.scm (stop-page): Use it.
2538
2539         * scm/output-ps.scm (define-fonts): Bugfix.
2540
2541         * lily/grob.cc: Add penalty to interface.
2542
2543         * lily/include/paper-line.hh (class Paper_line): New member
2544         var penalty_.
2545
2546         * lily/system.cc (get_line): Initialise Paper_line with
2547         page-penalty's from original grobs.
2548
2549         * scm/define-music-properties.scm (all-music-properties): Add
2550         page-penalty.
2551
2552         * scm/define-grob-properties.scm (all-grob-descriptions): Idem.
2553
2554         * lily/score-engraver.cc (try_music): Handle page-penalty.
2555
2556         * ly/declarations-init.ly (pagebreak, noPagebreak): New command.
2557
2558 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2559
2560         * ly/declarations-init.ly (melismaEnd): typo
2561
2562         * scm/font.scm (add-cmr-fonts): caps is eccc, ecsc is slanted caps.
2563
2564         * scm/output-ps.scm (text): split string into spaces, use moveto
2565         for setting space. 
2566
2567 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
2568
2569         * po/nl.po: Update.
2570
2571         * scm/font.scm (add-cmr-fonts): Typo.
2572
2573 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2574
2575         * scm/font.scm (add-cmr-fonts): add sauter fonts under latin1
2576         font-encoding.
2577
2578         * scm/define-grobs.scm (all-grob-descriptions): idem.
2579
2580         * lily/time-signature.cc (numbered_time_signature): idem.
2581
2582         * scm/font.scm (add-cmr-fonts): use real encoding names for
2583         font-encoding.
2584
2585 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
2586
2587         * lily/paper-book.cc (classic_output): 
2588         * tex/lilyponddefs.tex (lybox): Add height, and proper raising.
2589         Fixes classic output.
2590         (lilypondstart):
2591         * scripts/lilypond.py (global_latex_preamble): Remove topmargin
2592         kludge.
2593
2594         * scripts/old-lilypond-book.py: Remove.
2595
2596         Page layout for SCOREs enclosed in a BOOK:
2597
2598         * scripts/lilypond.py: Remove LaTeX titling kludge.  Remove page
2599         layout tweaking.
2600
2601         * input/les-nereides.ly (theScore): Add \book.
2602
2603         * input/test/title-markup.ly: Add \book.
2604
2605         * scm/page-layout.scm (ly:optimal-page-breaks): Debugging output
2606         only if 'verbose.
2607
2608         * lily/include/paper-book.hh (PAGE_LAYOUT): Remove.
2609
2610         * lily/paper-outputter.cc (output_line): Remove PAGE_LAYOUT check.
2611
2612         * tex/lilyponddefs.tex (lilypondstart, lybox, lyitem):
2613         * scm/output-tex.scm (start-system): Update for page layout by
2614         LilyPond.
2615
2616         * scm/output-ps.scm (start-system): Previously (new-start-system).
2617
2618         * lily/paper-outputter.cc (output_header): Uniquify list of fonts
2619         passed to define-fonts.
2620
2621         * lily/paper-column.cc: 
2622         * lily/system.cc (get_line):
2623         * ly/property-init.ly (newpage): 
2624         * scm/define-grob-properties.scm:
2625         * scm/output-ps.scm: 
2626         * scm/output-tex.scm: Remove between-system-string kludge.
2627
2628         * scm/output-ps.scm (define-fonts, font-command,
2629         font-load-encoding): Handle ENCODING = #f.
2630
2631         * scm/output-tex.scm (output-scopes): Check if variable is bound.
2632
2633         * scm/define-markup-commands.scm (fill-line): Use
2634         make-simple-markup (WAS: unexisting make-word-markup).
2635
2636         * lily/text-item.cc (interpret_markup): Bugfix, transpose
2637         ENCODING, MARKUP parameters for interpret_string.
2638
2639         * lily/input-file-results.cc (do_one_file): Remove Paper_book hack.
2640
2641         * lily/score.cc (book_rendering): New method.
2642         (default_rendering): Create Paper_book helper locally, dump
2643         output.
2644
2645         * lily/my-lily-lexer.cc (the_key_tab): Add book.
2646
2647         * lily/parser.yy: Handle \book.
2648
2649         * lily/include/book.hh: 
2650         * lily/book.cc: New file.
2651
2652 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2653
2654         * lily/text-item.cc (interpret_string): new file, select font with
2655         encoding.
2656
2657         * lily/include/lily-guile.hh: ly_XXX_p -> is_XXX. Changes throughout.
2658
2659         * scm/define-markup-commands.scm (encoded-simple): new markup command.
2660
2661         * lily/parser.yy (markup): take encoding from lexer.
2662
2663 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2664
2665         * lily/kpath.cc (kpathsea_find_tfm): Do not trigger TFM generation.
2666
2667         * scm/output-ps.scm: Remove some cruft.
2668
2669 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2670
2671         * lily/kpath.cc (kpathsea_find_tfm): don't make unfound TFMs/AFMs.
2672
2673         * Documentation/user/lilypond.tely (Top): manual for v2.3 (backportme)
2674
2675 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2676
2677         * scm/font.scm (add-century-schoolbook-fonts):
2678         (make-century-schoolbook-tree): New function.
2679
2680         * input/test/title-markup.ly: Use Century Schoolbook font.
2681
2682 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2683
2684         * scripts/convert-ly.py: limited old-style markup convert. (Thanks
2685         to Erik Sandberg) 
2686
2687         * lily/font-metric.cc (LY_DEFINE): new function, return fontName.
2688
2689         * scm/output-ps.scm (define-fonts): remove hack for feta/parmesan.
2690
2691         * lily/font-metric.cc (LY_DEFINE): change to ly:font-filename
2692
2693         * scm/encoding.scm (coding-alist): add AdobeStandardEncoding
2694
2695 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2696
2697         * scm/part-combiner.scm (determine-split-list): bugfix: if no
2698         solo-state (at end of solo), we can set the solo status
2699         too. (backportme.)
2700
2701         * input/regression/part-combine-solo-end.ly: new file.
2702
2703 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2704
2705         * scripts/abc2ly.py (parse_file): Strip \r from lines.  Fixes DOS
2706         flavour abc files.  Really ignore unknown keys (backportme).
2707
2708 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2709
2710         * lily/scaled-font-metric.cc (text_dimension): only multiply with
2711         magnification_ when looking up in orig_.
2712
2713         * scm/output-tex.scm (text): switch off char-mapping.
2714
2715         * lily/tfm.cc (coding_scheme): replace ' ' in encoding with '-',
2716         because AFM's encoding field cannot have spaces.
2717
2718 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2719
2720         * scm/output-ps.scm (define-fonts): More re/encoding tweaking.
2721
2722 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2723
2724         * lily/paper-def.cc (find_scaled_font): change to inputencoding.
2725
2726         * mf/cmr.enc: new file, without hi-bit ascii info. 
2727
2728         * lily/bezier-bow.cc (slur_shape): make indent dependent on
2729         width. This removes the 'hook' at the end of a long slur.
2730
2731         * buildscripts/mf-to-table.py (parse_logfile): don't append
2732         encoding to fontname.
2733
2734 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2735
2736         * scm/output-ps.scm (define-fonts): Load .enc only once.
2737
2738         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Install .enc files
2739         too.
2740
2741 2004-04-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2742
2743         * buildscripts/mf-to-table.py (parse_logfile): remove spaces from
2744         encoding field.
2745
2746         * lily/stencil-scheme.cc: remove ly:fontify-atom 
2747
2748         * ly/portuges.ly (pitchnames): new file.
2749
2750         * lily/include/lily-guile.hh: many new ly_ functions.  Thanks to
2751         Michael Welsh Duggan
2752
2753         * lily/*.cc: deprecate gh_ interface. Thanks to Michael Welsh Duggan
2754
2755         * ly/nederlands.ly: add comment about digits.
2756
2757         * lily/scaled-font-metric.cc (derived_mark): idem.
2758
2759         * scm/encoding.scm (make-encoding-mapping): change permutation to
2760         mapping.
2761
2762         * lily/scaled-font-metric.cc (derived_mark): is a const method.
2763         (Modified_font_metric): make alist for coding_description_
2764         (LY_DEFINE): remove coding-name.
2765
2766         * scm/output-tex.scm (text): remove debugging code.
2767
2768         * lily/scaled-font-metric.cc (ly_font_encoding): return vector
2769
2770         * buildscripts/mf-to-table.py (parse_logfile): read EncodingScheme
2771         from infile.
2772
2773         * mf/feta-generic.mf: move fet_beginfont into generic code.
2774         use fetaMusic (without space) as encoding
2775
2776         * mf/feta-autometric.mf: take encoding argument
2777
2778         * lily/afm.cc (read_afm_file): bugfix, read global info too. 
2779
2780         * lily/my-lily-lexer.cc (set_identifier): remove gh_scm2newstr
2781         use.
2782
2783         * scm/encoding.scm (read-encoding-file): use symbol for glyph
2784         name.
2785
2786 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2787
2788         * input/test/title-markup.ly: Set inputencoding.
2789
2790         * scm/output-ps.scm (define-fonts): Handle font re-encoding.
2791
2792         * lily/scaled-font-metric.cc (ly:font-coding-name): New function.
2793
2794         * scm/encoding.scm (get-coding-filename, get-coding-command): New
2795         function.
2796         (coding-alist): Also hold filename, command.
2797         (read-encoding-file): Return symbols.
2798
2799 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2800
2801         * scm/output-tex.scm: remove fontify; text and char take a font
2802         argument.
2803
2804         * lily/tfm.cc (name_to_index): new function, use encoding_table_.
2805
2806         * lily/scaled-font-metric.cc (text_dimension): init
2807         coding_{permutation,table}_ too 
2808         (LY_DEFINE): ly:font-encoding, new function return
2809
2810         * lily/paper-def.cc (find_scaled_font): take input coding from
2811         inputcoding paper var.
2812
2813         * lily/performance.cc (output): remap modulo 16.
2814
2815         * lily/text-item.cc (interpret_markup): whoops, variable
2816         shadowing fixed.
2817
2818 2004-04-06  Michael Welsh Duggan  <mwd@sei.cmu.edu>
2819
2820         * lily/piano-pedal-performer.cc (try_music): Compare symbols to
2821         symbols, not symbols to strings.
2822
2823         * lily/piano-pedal-engraver.cc (try_music): Compare symbols to
2824         symbols, not symbols to strings.
2825
2826 2004-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2827
2828         * lily/kpath.cc (kpathsea_gulp_file_to_string): 
2829         (ly:kpathsea-gulp-file): New function.
2830
2831         * scm/encoding.scm (read-encoding-file): Use it.
2832
2833 2004-04-06  Werner Lemberg  <wl@gnu.org>
2834
2835         * scm/encoding.scm (coding-alist): Fix typo.
2836
2837 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2838
2839         * lily/scaled-font-metric.cc (text_dimension): move function from
2840         Font_metric
2841         (make_scaled_font_metric): init coding_scheme_ to TeX
2842         (text_dimension): use get-coding-vector for non TeX coding_scheme_
2843
2844         * lily/include/scaled-font-metric.hh (struct
2845         Modified_font_metric): rename from Scaled_font_metric
2846
2847         * scm/encoding.scm (read-encoding-file): split up large function,
2848         leave caching to (delay)
2849
2850         * lily/lily-guile.cc (LY_DEFINE): typecheck argument.
2851
2852 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
2853
2854         * lily/my-lily-lexer.cc (set_encoding): New method.
2855
2856         * lily/lexer.ll: Grok \encoding.
2857
2858         * lily/font-metric.cc (get_encoded_index): New function.
2859
2860         * lily/include/font-metric.hh (coding_scheme): New method.
2861
2862         * scm/encoding.scm: New file.
2863
2864         * mf/feta-beugel.mf: Better error message (WAS: `foobar').
2865
2866 2004-04-05  Werner Lemberg  <wl@gnu.org>
2867
2868         * Documentation/user/tutorial.itely: Revised (finished).
2869
2870         * Documentation/user/macros.itexi (@separate): Removed.
2871
2872 2004-04-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2873
2874         * scm/output-ps.scm (define-fonts): fix scaling.
2875
2876         * lily/scaled-font-metric.cc (design_size): add function.
2877
2878         * lily/font-metric.cc (LY_DEFINE): opps ly:font-design-size is only
2879         partial cut&paste of ly:font-magnification.
2880
2881 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
2882
2883         * scm/output-ps.scm (define-fonts):
2884         (fontify): Update.
2885
2886 2004-04-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2887
2888         * po/fr.po: update. (backportme).
2889
2890         * po/nl.po: update. (backportme). 
2891
2892         * mf/feta-beugel.mf: document why design size is not fixed.
2893
2894         * mf/feta-braces-a.mf: rename to stress that it's not design size.
2895
2896 2004-04-04  Werner Lemberg  <wl@gnu.org>
2897
2898         * Documentation/user/tutorial.itely: Revised (continued).
2899
2900 2004-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2901
2902         * po/nl.po: Update (backportme).
2903
2904 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2905
2906         * po/de.po: update. (backportme).
2907
2908         * scm/output-tex.scm (font-command): use ly: functions to
2909         construct name.
2910         (define-fonts): don't use alist, just dump \font definitions.
2911         (font-load-command): calculate proper scaling by taking
2912         outputscale from paper argument.
2913
2914         * lily/stencil-scheme.cc (fontify_atom): insert Font_metric into
2915         expression.
2916
2917         * lily/paper-outputter.cc (output_header): pass paper arg to
2918         define-fonts
2919
2920         * lily/paper-def.cc (font_descriptions): dump list of
2921         Scaled_font_metrics
2922         (find_scaled_font): take Font_metric argument, store
2923         Scaled_font_metrics in hash-table containing (size ->
2924         Scaled_font_metrics) alist.
2925         (get_dimension): rename from get_realvar
2926
2927         * lily/font-metric.cc (LY_DEFINE): ly:font-design-size,
2928         ly:font-magnification, ly:font-name: new functions
2929
2930 2004-04-03  Werner Lemberg  <wl@gnu.org>
2931
2932         * Documentation/user/dedication.itely,
2933         Documentation/user/preface.itely,
2934         Documentation/user/introduction.itely,
2935         Documentation/user/tutorial.itely: Revised.
2936         Removing leading spaces which distorts output if info files are read
2937         with stand-alone info.
2938         Removing superfluous inter-word spaces which also distorts output
2939         for stand-alone info.
2940         Using ` and ' instead of `` and '' everywhere to improve
2941         legilibility with stand-alone info
2942         Using @samp for single-letter input items and data which contains
2943         spaces, @code for other things.
2944
2945         * lily/grob-interface.cc: Adding copyright.
2946         (check_interfaces_for_property): Improve format of warning message.
2947
2948 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2949
2950         * lily/include/font-metric.hh (struct Font_metric): add
2951         design_size () method.
2952
2953         * buildscripts/mf-to-table.py (base): add DesignSize comment.
2954
2955         * lily/afm.cc (read_afm_file): read design size.
2956
2957         * input/regression/repeat-unfold-tremolo.ly: add dotted case.
2958
2959         * scm/music-functions.scm (unfold-repeats): handle dots too.
2960
2961 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2962
2963         * mf/GNUmakefile ($(outdir)/$(redhat-package)): fix URL.
2964         (backportme)
2965
2966 2004-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2967
2968         * input/wilhelmus.ly: Use raggedright.  Hack `Een prin -- ce'
2969         lyric indent.  Revert melismaBusyProperties using \unset.
2970
2971 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2972
2973         * input/regression/bar-check-redefine.ly (pipeSymbol): new file.
2974
2975         * lily/parser.yy (command_element): allow redefinition of |
2976         meaning.
2977
2978         * lily/break-align-engraver.cc (acknowledge_grob): construct
2979         LeftEdge where the first cause for alignment is coming from.
2980         This makes \override Staff.LeftEdge work as expected.
2981
2982         * lily/slur-performer.cc (Slur_performer): add inits
2983
2984         * lily/beam-performer.cc (Beam_performer): add inits
2985
2986 2004-04-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2987
2988         * VERSION (PACKAGE_NAME): release 2.2.0