1 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * scm/define-grobs.scm (all-grob-descriptions): calc
6 * lily/horizontal-bracket.cc (make_bracket): support
9 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
11 * VERSION (PACKAGE_NAME): release 2.9.26
13 * buildscripts/output-distance.py (test_basic_compare): add
15 (FileLink.multi_img_cell): new function, glob multi-page png
18 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
20 * po/lilypond.pot: update.
22 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
24 * Documentation/user/global.itely (File structure): remove
27 * lily/parser.yy (FIXME): remove ADDQUOTE
29 * Documentation/user/global.itely (Extracting fragments of
30 notation): new node, about clip systems.
32 * Documentation/user/lilypond-book.itely (Many quotes of a large
33 score): ref to clip systems.
35 * Documentation/user/instrument-notation.itely (Entering lyrics):
36 add note about lyric ties and required font.
38 * lily/open-type-font.cc (glyph_list): format errors.
40 * Documentation/user/programming-interface.itely (Scheme
41 procedures as properties): more doco on simple-closure and scheme
43 (Input variables and Scheme): use lilypond[verbatim], document
46 * Documentation/user/page.itely (Displaying spacing): use \book
47 explicitly, so arrows show .
48 (Line breaking): add note about Forbid_line_break_engraver
50 * Documentation/user/tweaks.itely (Common tweaks): also set length
51 to prevent tie squeezing.
52 (Default files): use @var{}
54 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
55 (Generating LilyPond files): add FOMUS.
57 2006-10-20 Joe Neeman <joeneeman@gmail.com>
59 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
60 Y-offset for TextScript and Script
62 * lily/text-engraver.cc (make_item):
63 * lily/script-engraver.cc (make_script_from_event):
64 remove call to Side_position_interface::set_axis since all scripts
65 now have this set by default
68 * lily/prob.cc: use variables
70 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
72 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
73 at typography, rather analyse stream event duration.
75 * Documentation/user/page.itely (Page formatting): set a6 paper
76 for system separator example.
78 * lily/arpeggio.cc (Module): idem.
80 * lily/accidental-placement.cc: add script-priority property.
82 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
84 * lily/ttf.cc (print_trailer): if all else fails: use
85 glyphIndexXXXX as glyph name. Fixes #117.
87 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
88 entry if cmap contains glyph.
89 (get_index_to_charcode_map): remove from Pango_font class, use
90 global filename -> font mapping.
91 (get_glyph_index_name): new function.
92 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
95 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
97 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
100 * scm/define-grob-properties.scm (all-user-grob-properties):
101 remove outdated doc. Fixes #116
103 * lily/completion-note-heads-engraver.cc (process_music): always
104 clone input events; otherwise we may overwrite input 'duration
105 property. Fixes #115.
107 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
110 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
113 * VERSION (PATCH_LEVEL): bump version.
115 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
117 * lily/engraver.cc (internal_make_grob): use variables.
119 * flower/string-convert.cc (dec2double): clean-up warnings.
121 * configure.in (CXXFLAGS): add -Werror.
123 * VERSION (PACKAGE_NAME): release 2.9.25
125 2006-10-18 Joe Neeman <joeneeman@gmail.com>
127 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
128 line even if we precede a forced break.
130 * lily/optimal-page-breaking.cc (try_page_spacing): square line
131 forces too. Make page-spacing weight default to 10 because the
132 changes to vertical springs decreased the page force/line force
133 proportions. Also, take the average of line force and page force
134 instead of just the sum.
136 * lily/constrained-breaking.cc (initialize): make the stiffness
137 of the vertical springs depend on the height of the system. This
138 prevents pages with only a few large systems from getting huge
141 * Documentation/user/page.itely (Page formatting): document the
142 change in default page-spacing-weight
144 * lily/include/constrained-breaking.hh: initialise bottom_padding_
146 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
148 * input/typography-demo.ly (melody): remove superfluous slur.
150 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
151 add piano-pedal-script-interface
153 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
155 * scripts/lilypond-book.py: DocBook support.
157 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
159 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
161 (stop_translation_timestep): set bound to currentMusicalColumn if
162 not set yet. Fixes #102
164 * lily/piano-pedal-bracket.cc: formatting.
166 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
168 * lily/piano-pedal-align-engraver.cc: new class
169 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
172 2006-10-18 Heikki Junes <hjunes@gmail.com>
174 * po/fi.po: Update Finnish translation (before the next release).
176 2006-10-17 Joe Neeman <joeneeman@gmail.com>
178 * lily/system.cc (get_paper_system): reinstate the backwards-
179 compatible page breaking for the old page breaker.
181 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
183 * lily/recording-group-engraver.cc: removed
185 * lily/context.cc, lily/translator-group.cc: Don't touch
186 Context::implementation_ if it's null
188 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
190 * scm/paper.scm: only use left-margin if defined.
192 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
194 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
196 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
197 strokeFingerOrientations
199 * lily/script-column.cc (row_before_line_breaking): also handle
200 accidentals and arpeggios in horizontal script stacking.
202 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
205 * input/regression/script-stack-horizontal.ly: trim.
207 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
209 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
212 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
213 'text if string argument.
215 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
217 * scm/define-context-properties.scm
218 (all-user-translation-properties): change to strokeFingerOrientations
220 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
222 * lily/parser.yy: remove debug output
224 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
226 * ly/paper-defaults.ly: set left/right margin.
228 * scm/paper.scm (set-paper-dimensions): use left-margin and
229 right-margin for computing linewidth.
231 * Documentation/topdocs/NEWS.tely (Top): idem.
233 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
236 * scm/define-markup-commands.scm (tied-lyric): increase negative
237 space: space syllables tighter.
239 * VERSION (PATCH_LEVEL): bump version.
241 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
244 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
246 * COPYING: further clarification
248 * VERSION: release 2.9.24
250 * input/regression/script-stack-horizontal.ly: add version.
252 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
254 * input/regression/lyric-tie.ly (texidoc): use different words.
256 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
258 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
260 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
261 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
263 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
265 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
267 * Doxyfile: remove file.
269 * scm/define-grob-interfaces.scm (string-finger-interface): add
270 string-finger-interface
272 * lily/general-scheme.cc (LY_DEFINE): move
273 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
275 * Documentation/topdocs/NEWS.tely (Top): add note for
276 string-finger feature.
278 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
281 * scm/output-lib.scm (string-finger::calc-text): read 'digit
284 * input/regression/script-stack-horizontal.ly: new file.
286 * ly/engraver-init.ly: add Script_row_engraver.
288 * lily/script-column.cc (order_grobs): refactor: separate axis
290 (row_before_line_breaking): new function.
292 * lily/script-row-engraver.cc (Script_row_engraver): new file.
294 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
296 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
298 * Documentation/user/instrument-notation.itely: Cleanup: Remove
299 annoying skip notes from mensural ligature example. Update
300 @refbugs for ligatures and mensural ligatures.
302 * lily/coherent-ligature-engraver.cc,
303 lily/include/coherent-ligature-engraver.hh,
304 lily/mensural-ligature-engraver.cc,
305 lily/vaticana-ligature-engraver.cc: Revise code for item
306 reparentizing. There should now be less programming_error
309 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
311 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
312 Maintenance bugfix: Don't create empty Stencil (), but empty box
313 instead. This fix should eliminate some programming_error
316 * ly/engraver-init.ly (MensuralStaff): Set default accidental
319 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
320 \layout block _before_ score.
322 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
324 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
326 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
328 2006-10-13 Erlend Aasland <erlenda@gmail.com>
330 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
332 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
334 * VERSION (PATCH_LEVEL): bump version.
336 * COPYING: clarify exception note.
338 * lily/main.cc: remove remark about "COPYING".
340 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
341 system-count starts at 0 for each clip-region. Change name to
342 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
343 layout block, per score.
345 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
347 * lily/input-smob.cc: add equal_p for Input
349 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
352 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
354 * lily/prob.cc: Add equal_p predicate for Prob
356 * lily/translator.cc: small cleanup
358 * scm/document-music.cc: use data from translator listener
359 registration to generate documentation for event classes
361 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
363 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
365 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
367 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
369 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
371 * Documentation/topdocs/INSTALL.texi: Thinko.
373 * .cvsignore: Update.
375 * lexer-gcc-3.1.sh: Remove.
377 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
378 Update anonymous cvs access. Remove comment about gcc 3.0.4.
380 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
382 * VERSION: release 2.9.23
384 * lily/paper-column-engraver.cc (stop_translation_timestep): also
387 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
389 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
391 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
393 * input/regression/clip-systems.ly (Notes): new file.
395 * scm/lily.scm (define-scheme-options): add clip-systems option.
397 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
399 (dump-stencil-as-EPS): move bbox calculation from previous
401 (output-framework): use -dclip-systems
403 * scm/lily-library.scm (filtered-map): new function
405 * scm/framework-ps.scm (clip-system-EPS): new function.
406 (clip-system-EPSes): new function.
408 * lily/paper-column.cc: add rhythmic-location to interface
410 * scm/define-grob-properties.scm (all-user-grob-properties): add
411 rhythmic-location property.
413 * scm/clip-region.scm: new file: rhythmic-location data type and
414 system-clipped-x-extent function.
416 * ly/init.ly: use (scm clip-region)
418 * lily/paper-column-engraver.cc (stop_translation_timestep): set
419 rhythmic-location for paper column grobs.
421 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
423 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
425 * ly/engraver-init.ly: Remove obsolete comment on
428 * Documentation/user/instrument-notation.itely: Tune Ancient
429 Articulations figure, such that the episem actually shows.
431 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
432 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
434 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
437 2006-10-12 Graham Percival <gpermus@gmail.com>
439 * Documentation/user/ {some}: minor edits that were lost somehow.
441 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
443 * VERSION (PACKAGE_NAME): bump version.
445 * input/regression/lyric-tie.ly (texidoc): new file.
447 * Documentation/topdocs/NEWS.tely (Top): add new feature.
449 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
451 * scm/define-markup-commands.scm (tied-lyric): new function: split
452 string along ~ and reattach with U+203F (tie character) and
455 * scm/output-lib.scm (lyric-text::calc-text): new function.
457 * lily/lyric-engraver.cc (process_music): don't set 'text.
459 * scm/output-lib.scm (string-finger::calc-text): new function
460 (lyric-text::print): new function.
462 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
463 generic for fingering & string number. Use for string-finger.
465 * scm/define-music-types.scm (music-descriptions): add
468 * lily/fingering-engraver.cc (listen_string_finger): new function
470 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
472 * scm/define-context-properties.scm
473 (all-user-translation-properties): add stringFingerOrientations
475 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
477 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
478 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
480 * lily/dots.cc: Added style property for dots.
482 * mf/parmesan-heads.mf: Fix typo in comment.
484 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
485 adding longa head to feta font and removing obsolete default
488 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
490 * scm/output-lib.scm (fingering::calc-text): use origin
491 event-property, not music-property.
493 * lily/lilypond.rc.in: spell my name correctly.
495 2006-10-10 Joe Neeman <joeneeman@gmail.com>
497 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
498 already have a non-empty extent. Fixes estimation for Hara-kiri
501 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
503 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
506 * lily/ligature-engraver.cc: Remove unused #include.
508 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
509 Bugfix: remove method check_for_prefix_loss(Item *) from global
510 namespace to avoid namespace pollution.
512 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
514 * VERSION: release 2.9.22
516 * ly/generate-documentation.ly: update option name.
518 * lily/dynamic-text-spanner.cc (print): revert fix.
520 * scm/define-grob-interfaces.scm
521 (trill-pitch-accidental-interface):
522 add trill-pitch-accidental-interface
524 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
525 dereference if it's really a duration.
527 * lily/figured-bass-engraver.cc (process_music): clear spanner if
528 useBassFigureExtenders is not set.
529 (listen_bass_figure): record as new event if
530 useBassFigureExtenders not set. Fixes #103.
532 * scm/stencil.scm (circle-stencil): don't center stencil argument,
533 instead: move circle. Fixes #107.
535 * scm/define-grobs.scm (all-grob-descriptions): set
536 allow-loose-spacing for PaperColumn and
537 NonMusicalPaperColumn. Kludge for #110.
539 * lily/spaceable-grob.cc: add allow-loose-spacing property.
541 * lily/spacing-determine-loose-columns.cc (is_loose_column):
542 allow-loose-spacing property.
544 * scm/define-markup-commands.scm (postscript): gsave & grestore
545 around embedded PS. Do setlinewidth too. Fixes #109.
547 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
549 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
550 code. This patch fixes ligature brackets that were not at all
553 2006-10-08 Graham Percival <gpermus@gmail.com>
555 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
557 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
559 * scm/define-context-properties.scm: clarified docs (bug 91).
561 * Documentation/user/basic-notation.itely: document volta brackets
562 not aligning (bug 63).
564 * Documentation/user/ global.itely invoking.itely: ignore or
565 add warnings about texstr.
567 2006-10-08 John Mandereau <john.mandereau@free.fr>
569 * po/fr.po: update translation.
571 * po/: update msgids.
573 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
575 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
577 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
579 * Documentation/user/page.itely (Two-pass vertical spacing): add
580 documentation for two-pass spacing technique.
582 2006-10-06 Graham Percival <gpermus@gmail.com>
584 * Documentation/user/convert-ly.txt: new file; new
585 storage place for this file (moved from bugs/ CVS).
587 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
589 * lily/note-head.cc: Fixed programming_error message.
591 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
593 * scm/define-grobs.scm (pure-conversion): move pure-callback
596 * scm/script.scm (default-script-alist): set avoid-slur for turn,
597 marcato, stopped, thumb.
599 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
601 * lily/completion-note-heads-engraver.cc (process_music): don't
602 skimp on memory usage.
604 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
607 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
608 parenthesis item. This fixes premature Y-extent triggering. Fixes
611 * VERSION (PATCH_LEVEL): bump version.
613 2006-10-04 Graham Percival <gpermus@gmail.com>
615 * Documentation/user/advanced-notation.itely: added
616 info about instrument names for piano or other contexts,
619 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
621 * mf/feta-bolletjes.mf (solfa_quarter_width): use
622 solfa_base_notewidth as unit for non-DO-notes too.
624 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
626 * VERSION: release 2.9.21
628 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
631 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
633 * python/lilylib.py (progress): Minor fix.
635 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
637 * lily/note-name-engraver.cc: doc engraver.
639 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
641 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
643 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
646 * lily/stem-engraver.cc (make_stem): don't set duration-log
648 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
649 write snippet-names binary.
651 * python/lilylib.py (system): use os.system for mingw32
653 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
656 * scm/backend-library.scm: update email address.
658 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
661 * scm/define-grobs.scm (all-grob-descriptions): use callback to
664 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
665 handle dot creation separately.
667 * lily/tab-note-heads-engraver.cc (process_music): idem.
669 * lily/drum-note-engraver.cc (process_music): idem.
671 * lily/note-heads-engraver.cc (process_music): idem.
673 * lily/rest-engraver.cc: don't set duration-log.
675 * scm/output-lib.scm (string-number::calc-text): new function.
676 (note-head::calc-duration-log): new function.
678 * lily/fingering-engraver.cc (make_script): remove 'text setting.
680 * scm/output-lib.scm (fingering::calc-text): new function.
682 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
684 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
685 and include-eps-font -> include-eps-fonts
687 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
689 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
691 * lily/timing-translator.cc: list properties.
692 (start_translation_timestep): update internalBarNumber too.
694 * scm/define-context-properties.scm
695 (all-user-translation-properties): add internalBarNumber.
697 * input/regression/spacing-no-note.ly: new file.
699 * buildscripts/output-distance.py (link_file): verbosity for OSError.
701 * lily/book.cc: #include cleanup.
703 * lily/include/lily-guile-macros.hh: add assert to
704 scm_or_str2symbol(SCM).
706 * VERSION (PATCH_LEVEL): bump version.
708 * lily/spacing-spanner.cc (musical_column_spacing): handle
709 musical->nonmusical spacing case, where there is no spacing
710 wish. Fixes issue #61.
712 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
713 (pango_item_string_stencil): use logical rect horizontally (to
714 preserve spaces), ink_rect vertically (for time signatures).
716 * lily/font-metric.cc (word_stencil): new interface function
718 * input/regression/utf-8-mixed-text.ly: new file.
720 * lily/percent-repeat-engraver.cc (listen_percent): remove
723 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
724 non-dynamic scripts. Fixes #30.
726 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
728 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
730 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
731 SCM_UNDEFINED for non-existent data.
733 * lily/side-position-interface.cc (general_side_position): allow
734 optional current_offset argument for chaining, so combinations of side-position
735 and outside slur callback don't add up. Fixes issue #92.
737 * lily/pango-font.cc (pango_item_string_stencil): use
738 logical_rect. This prevents spaces after words from disappearing,
741 * VERSION: release 2.9.20
743 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
745 * scm/define-grob-properties.scm (all-user-grob-properties):
746 mention stencil as user settable.
748 2006-10-02 Joe Neeman <joeneeman@gmail.com>
750 * Documentation/user/page.itely (Page formatting):
751 document auto-first-page-number
753 * lily/page-breaking.cc (find_chunks_and_breaks):
754 * lily/paper-score.cc (calc_breaking): Follow changes to the
755 Constrained_breaking interface
757 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
758 here backwards, as an optimisation
759 (initialize): new function; move most of the code in resize () here
760 (combine_demerits): cache ragged_right_
761 (Constrained_breaking): constructor now takes the Paper_score
763 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
765 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
766 avoid parser lookahead for 0-ary functions.
768 * lily/translator.cc: Extract event classes from
769 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
771 2006-10-02 Heikki Junes <hjunes@gmail.com>
773 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
776 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
778 * scm/layout-page-layout.scm (page-breaking-wrapper): new
779 function. Call the page breaking function selected in the
780 `page-breaking' \paper variable, then the post processing function
781 chosen using the `page-post-process' \paper variable.
782 (line-height): new function. Return the height of a system.
783 (line-minimum-position-on-page): new function. Return the position
784 of a system on page (using the previous line position), only
785 considering between system padding.
786 (stretchable-line?): new function. Says whether a line can be
787 stretched (ie. is not a title nor a single staff system).
788 (page-maximum-space-left): new function. Computes space left on a
789 page, when all systems are separated by their padding.
791 * lily/page-breaking.cc (breaking::make_pages): Move page post
792 processing function call to page breaking wrapper (common to all
795 * lily/paper-book.cc (book::pages): call the page breaking
796 wrapper, instead of the page breaker directly
798 * ly/paper-defaults.ly: Add \paper variables for page breaking
799 wrapper and page post processing function. Make
800 `write-page-layout' value depend on the 'dump-tweaks option. Add a
801 `system-maximum-stretch-procedure' variable for holding a function
802 computing the maximum stretch a system allows.
804 * scm/layout-page-dump.scm (write-page-breaks): computes the
805 stretch to apply to systems on a page to minimize left
806 space. Dump this stretch length.
808 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
809 the system-stretch property of the tweak data to stretch the
811 (includePageLayoutFile): Void function which includes the
812 generated page-layout file if it exists and if the page layout
813 dumping is not asked.
814 (scoreTweak): if the score tweak named by the argument exists,
817 2006-10-01 Joe Neeman <joeneeman@gmail.com>
819 * lily/page-spacing.cc (compress_lines, uncompress_solution):
820 handle correctly the case where there are multiple \noPageBreaks
823 2006-09-30 Laura Conrad <lconrad@laymusic.org>
825 * abc2ly.py adds segno (S) and Coda (O) to articulations.
827 * abc2ly.py fix so that entering " -- " will translate to a -- in
828 the lilypond instead of a " - - "
830 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
832 * lily/align-interface.cc: fix typo
834 * lily/dynamic-text-spanner.cc (print): Add a special case for
835 trill spanner right sides.
837 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
839 * lily/align-interface.cc (get_extents_aligned_translates): add
840 support for padding variable.
842 * lily/break-align-interface.cc (self_align_callback): oops: use
843 loop variable in guard.
845 * input/regression/repeat-percent-grace.ly: new file.
847 * lily/percent-repeat-engraver.cc (start_translation_timestep):
848 remember first currentCommandColumn of a grace run. Fixes issue 70.
850 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
851 move class definition to CC file.
853 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
855 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
856 measure-long repeats.
858 * flower/include/international.hh: include stdarg.h
860 2006-09-30 Joe Neeman <joeneeman@gmail.com>
862 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
863 put_systems_on_pages to return an empty result, we need to assign
864 demerits properly in that case.
865 (put_systems_on_pages): Make the number of pages depend on the
866 evenness of page_number. Add auto-first-page-number.
867 (calc_subproblem): ensure that the page-number is even for the
868 left-hand page. Warn if the first page-turn doesn't fit onto the
869 first (right-hand) page.
871 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
872 (min_page_count): make this publicly accessible
873 (min_page_count): fix a bug when there are forced page breaks that
874 was introduced when I made this loop run backwards
875 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
876 replace space_systems_on_min_pages with these two. The logic in
877 space_systems_on_min_pages was getting too convoluted and is better
878 contained in page-turn-page-breaking.
880 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
882 (breakable_column): typo
884 * lily/source-file.cc (get_line): fix off-by-one error
885 and clean up some of the logic
887 2006-09-29 Joe Neeman <joeneeman@gmail.com>
889 * lily/page-breaking.cc (make_pages): honour the first-page-number
892 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
894 * VERSION (PACKAGE_NAME): bump version.
896 2006-09-26 Pal Benko <benko.pal@gmail.com>
898 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
899 (the latter is the same as petrucci-f which is kept for compatibility)
901 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
903 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
905 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
907 * lily/global-context.cc (run_iterator_on_me): break out of loop
908 if moment doesn't increase.
910 * scm/define-grob-properties.scm (all-user-grob-properties): add
913 * lily/accidental.cc (after_line_breaking): read forced property.
915 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
918 * input/regression/accidental-forced-tie.ly: new file.
920 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
922 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
924 * lily/figured-bass-engraver.cc: only listen to rest events if
925 ignoreFiguredBassRest is not set.
927 * scm/define-context-properties.scm
928 (all-user-translation-properties): add ignoreFiguredBassRest property
930 2006-09-24 Joe Neeman <joeneeman@gmail.com>
932 * lily/paper-book.cc (get_system_specs):
933 (set_system_penalty): fix breakbefore.
934 We used to set a penalty on the system after the break, now we
935 set a permission on the system before the break
937 * lily/grob-property.cc: add scm debugging hooks into
938 property modification
940 * lily/context-property.cc:
942 rename make_foo_from_properties to internal_make_foo and
943 move it from context-property.cc to a member function of
946 * lily/include/lily-guile-macros.hh:
947 overload ly_symbol2scm macro so that there is no more need
950 * lily/volta-repeat-iterator.cc:
951 * lily/tweak-engraver.cc:
952 * lily/tuplet-bracket.cc:
953 * lily/span-bar-engraver.cc:
954 * lily/script-engraver.cc:
955 * lily/prob-scheme.cc:
956 * lily/pointer-group-interface.cc:
958 * lily/grob-scheme.cc:
959 * lily/grob-property.cc:
961 * lily/context-property.cc:
962 * lily/break-substitution.cc:
963 * lily/break-align-engraver.cc:
964 * lily/axis-group-interface.cc:
965 * lily/align-interface.cc:
966 remove calls to internal_FOO
968 * lily/system-start-delimiter-engraver.cc:
969 * lily/parenthesis-engraver.cc:
970 * lily/accidental-engraver.cc:
971 remove calls to make_foo_from_properties
973 2006-09-23 Graham Percival <gpermus@gmail.com>
975 * Documentation/user/programming-iterfaces.itely: fix
976 def-music-function -> define-music... leftover.
978 2006-09-23 Joe Neeman <joeneeman@gmail.com>
980 * lily/page-spacing.cc (min_page_count): by running the loop
981 backwards, we can calculate ragged_last properly.
983 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
985 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
986 printfirst-page-number -> print-first-page-number
988 * python/convertrules.py: corresponding rule.
990 * Documentation/user/page.itely (Page formatting): Document the
991 default values of all page layout parameters.
993 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
995 * lily/lexer.ll: remove limitation on music function arity. New
996 mode extratoken, which inserts extra EXPECT_* tokens after
997 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
999 * lily/parser.yy: Change grammar for music function accordingly.
1001 * lily/include/lily-parser.hh: New method get_state, new member
1002 hidden_state. Works around a problem when parser fetches
1003 MUSIC_FUNCTION token but not the following EXPECT_* token.
1005 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1008 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1009 references to Music; use ASSIGN_EVENT_ONCE everywhere
1011 * lily/grob-info.cc: junk *music_cause
1013 * lily/music.cc: copy eventified articulations to stream event
1015 * lily/part-combine-iterator.cc: Cleanup using enums
1017 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1020 * lily/include/engraver.hh: Junk music.hh include
1022 * lily/stream-event.cc: Changed constructors
1024 2006-09-21 Graham Percival <gpermus@gmail.com>
1026 * Documentation/user/tweaks.itely (Fitting music onto fewer
1027 pages): change settings to avoid warning messages.
1029 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1031 * Documentation/user/tweaks.itely (Fitting music onto fewer
1032 pages): Add between-system-space setting.
1034 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1036 * lily/accidental-placement.cc (calc_positioning_done): don't
1037 trigger Y-extent calculation too early. Use pure_height instead.
1039 * lily/scale.cc (LY_DEFINE): new file.
1041 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1043 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1044 that happen at the start of a score: having a zero-length
1045 chunk was messing up min_system_count calculations.
1047 * lily/source-file.cc (get_line): lower_bound, not
1048 binary_search. Fixes problem where point-and-click would
1049 always point to the first line.
1051 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1053 * lily/accidental-placement.cc (calc_positioning_done): also put
1054 stems into accidental support.
1056 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1059 * scm/script.scm (default-script-alist): avoid-slur and
1060 slur-padding for portato script.
1062 * lily/stem-tremolo.cc (translated_stencil): new function.
1063 (height): use new function. Fixes tremolos on whole notes.
1065 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1068 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1070 * scripts/abc2ly.py (try_parse_comment): idem.
1072 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1073 bar_string iso. string.find()
1077 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1080 2006-09-18 Graham Percival <gpermus@gmail.com>
1082 * Documentation/user/basic-notation.itely: add bug
1083 warning about ties and octavation/clef.
1085 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1087 * VERSION (PACKAGE_NAME): release 2.9.18
1089 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1091 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1092 figure out midi file names right here.
1094 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1096 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1098 * scm/backend-library.scm: option naming: gs-font-load*s*
1100 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1103 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1105 * scm/define-music-types.scm (music-descriptions): remove
1106 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1107 Music::to_event doesn't complain.
1109 * lily/accidental-placement.cc (ape_compare):
1110 * lily/semi-tie.cc (compare):
1111 * lily/note-column.cc (shift_compare): replace by XXX_less
1113 * lily/tie-formatting-problem.cc (set_chord_outline):
1114 * lily/tie-column.cc (calc_positioning_done):
1115 * lily/system.cc (post_processing)
1117 * lily/stem.cc (note_head_positions)
1118 (calc_positioning_done):
1119 * lily/spanner.cc (do_break_processing)
1120 (find_broken_piece):
1121 * lily/span-bar.cc (print):
1122 * lily/semi-tie-column.cc (calc_positioning_done):
1123 * lily/rest-collision.cc (calc_positioning_done):
1124 * lily/program-option.cc (get_help_string):
1125 * lily/note-collision.cc (get_clash_groups):
1126 * lily/new-fingering-engraver.cc (position_scripts):
1127 * lily/keyword.cc (Keyword_table):
1128 * lily/hara-kiri-group-spanner.cc (request_suicide):
1129 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1130 * lily/accidental-placement.cc (calc_positioning_done):
1132 * lily/beam.cc (get_beam_segments):
1133 * lily/grob-array.cc (remove_duplicates):
1136 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1137 ragged-last-bottom = ##f (test the new page breaker)
1139 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1141 * scm/define-context-properties.scm
1142 (all-internal-translation-properties): remove properties that
1143 were used to communicate page-turn stuff to the paper-column
1146 * lily/lily-guile.cc (robust_scm2string): new function
1148 * lily/paper-column-engraver.cc: Clean up page turn stuff
1150 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1151 instead of cluttering up paper-column-engraver.cc
1153 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1155 * scm/layout-page-dump.scm (scm): export utility function names,
1156 to allow user writing cutsom dumping functions.
1158 * scm/layout-page-layout.scm: export utility function names to
1159 enable custom page breaking function writing. Tabify.
1160 (line-next-space): use ?-suffix only for predicates
1161 (page-maximum-space-to-fill): new function. Return the space
1162 between first and bottom system of a page, to give to
1164 (space-systems): use a space-to-fill argument (for instance as
1165 computed by page-maximum-space-to-fill) instead of computing
1166 internaly this space with the page height. That way, the caller
1167 can adjust the space to use.
1168 (make-page-from-systems, walk-paths): compute space to fill before
1169 calling space-systems.
1171 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1173 * scm/script.scm (default-script-alist): set paddings for every
1174 type here, increase for portato mark.
1176 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1179 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1181 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1182 use spanner::set-spacing-rods
1184 * lily/note-column.cc: reformat.
1186 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1187 step positioning for note/rest combinations.
1189 * input/regression/rest-note-collision.ly: new file.
1191 * scm/define-grobs.scm (all-grob-descriptions): add
1194 * flower/include/std-vector.hh: switch off again.
1196 * VERSION (PATCH_LEVEL): bump to 2.9.18
1198 * flower/include/std-string.hh: idem.
1200 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1202 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1204 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1207 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1209 * Documentation/user/page.itely: update page breaking documentation
1211 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1213 * lily/note-collision.cc (calc_positioning_done): only access
1214 first head if available.
1216 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1218 * scm/framework-ps.scm (output-preview-framework): use new name.
1220 * lily/program-option.cc (internal_set_option): use new names.
1222 * Documentation/user/SConscript (lilypond_book_flags): update -d
1225 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1226 output into other programs): new variable names.
1228 * scm/lily.scm (define-scheme-options): uniformize var names.
1230 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1231 tuplets_ is non-empty before popping.
1233 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1235 * lily/spanner.cc (find_broken_piece):
1236 * lily/spacing-spanner.cc (get_columns):
1237 * lily/source-file.cc (get_line):
1238 * lily/simple-spacer.cc (get_column_description):
1239 * lily/keyword.cc (lookup):
1240 use the new binary search.
1242 * flower/include/std-vector.hh: replace binary_search with
1243 a more STL-like version
1245 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1247 * lily/tie-performer.cc: remove unused last_event_ property.
1248 (class Tie_performer): add now_tied_heads_ property for
1249 partially-tied heads.
1250 (acknowledge_audio_element): when adding an Audio_note, put the
1251 note in now_tied_heads_ if the audio note is partially tied.
1252 (stop_translation_timestep): always include entries in
1253 now_tied_heads_ in heads_to_tie_.
1255 * lily/drum-note-performer.cc (process_music): look for tie-events
1256 in the articulations; pass to Audio_note constructor.
1258 * lily/note-performer.cc (process_music): look for tie-events in
1259 the articulations; pass to Audio_note constructor.
1261 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1264 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1265 include initializer in constructor.
1267 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1269 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1270 unless they are breakable. This fixes discrepancies between the forces
1271 calculated here and the forces calculated in get_line_configuration.
1273 * lily/grob.cc (pure_relative_y_coordinate): fix some
1274 mis-estimation that was happening with piano staves.
1276 * lily/constrained-breaking.cc (resize): don't choke if we get a
1277 measure that won't fit on a line.
1278 (combine_demerits): don't consider uniformity when ragged
1280 * lily/page-spacing.cc (solve): why the f* were there two of these?
1281 (calc_subproblem): properly handle the case where a system is taller
1284 * lily/system.cc (get_paper_system): ensure that all the permissions
1285 and penalties are passed to the paper systems.
1287 * lily/page-breaking.cc (create_system_list): support system-count.
1289 * scm/define-grobs.scm (pure-print-callbacks): add
1290 ly:script-interface::print
1292 * lily/page-spacing.cc (min_page_count): fix calculation of min
1293 pages if we are ragged and there are non-zero springs.
1295 * scm/layout-page-layout.scm: if the pure-height estimates are under
1296 the real height, allow space-systems to ignore padding if it is
1297 needed in order to fit the systems on one page
1299 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1301 (solve): fix performance problem. Make sure we always get at least
1304 * lily/page-breaking.cc (make_pages): include write-page-breaks
1307 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1309 * scm/define-grobs.scm: add the new slur-callback
1310 fix pure-relevant to not exclude grobs whose extent is already
1313 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1316 * lily/slur.cc (pure_height): new callback to estimate the height
1319 2006-09-02 Graham Percival <gpermus@gmail.com>
1321 * Documentation/user/invoking.itely: small update on
1322 MacOS X notes; thanks Trevor!
1324 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1326 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1328 * lily/lexer.ll: accept EOF in all states.
1330 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1332 * lily/source-file.cc (Source_file): always 0-terminate character
1333 array, to prevent Flex from barfing.
1335 * lily/global-context.cc (get_output): robustness: don't crash if
1336 no Score context found.
1338 * lily/include/book.hh (class Book): idem.
1340 * lily/include/context-def.hh (struct Context_def): idem.
1342 * lily/include/score.hh (class Score): don't derive from Input.
1344 * lily/book.cc (Book): add a copy ctor.
1346 * buildscripts/output-distance.py (FileLink.calc_distance): count
1347 orphans in distance too.
1349 * python/midi.c (midi_parse_track): robustness: don't read past
1352 * ly/performer-init.ly: add Control_track_performer, move
1353 Tempo_performer and Time_signature_performer to Score.
1355 * lily/score-performer.cc (acknowledge_audio_elements): override
1356 from base class: add to audio-columns
1358 * lily/control-track-performer.cc (add_text): new file: generate
1361 * lily/performance.cc: move output_header_track to
1362 Control_track_performer ()
1364 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1366 * lily/include/midi-item.hh (class Midi_channel_item): insert
1367 class into hierarchy, for items that can have a channel setting. Dehungarify.
1369 * lily/include/performer.hh (class Performer): remove
1370 play_element(); move functionality into announce/acknowledge.
1372 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1374 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1375 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1377 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1379 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1382 * lily/all-font-metrics.cc: remove TFM support.
1384 * lily/include/tfm.hh: remove TFM support, TFM reader.
1386 * lily/include/binary-source-file.hh: remove Binary_source_file.
1388 2006-08-27 Graham Percival <gpermus@gmail.com>
1390 * Documentation/topdocs/NEWS.itely: add @c marker for
1391 stuff I've processed.
1393 * Documentation/user/ various: info from NEWS.
1395 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1397 * lily/paper-column-engraver.cc (finalize): Oops, this change
1398 should have gone in on 2006-08-23
1400 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1402 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1403 quotes to quote arguments. Fixes Windows problem.
1405 * python/lilylib.py (progress): idem
1407 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1409 * scripts/musicxml2ly.py: fix for importing
1410 minor key signatures from MusicXML. (Phillip Kirlin)
1412 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1414 * python/musicxml.py:
1415 (Attributes.get_key_signature): now correctly retrieves mode from
1418 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1420 * lily/parser.yy (output_def_body): take ownership of identifier
1423 * Documentation/user/advanced-notation.itely (Metronome marks):
1424 update use of \tempo in \midi.
1426 * VERSION: release 2.9.16
1428 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1430 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1433 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1435 * input/regression/tie-chord-partial.ly: clarify example.
1437 * scm/define-music-properties.scm (all-music-properties): remove
1440 * ly/music-functions-init.ly: remove \untied.
1442 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1443 stream events and music events.
1444 (stop_translation_timestep): search acknowledged heads for
1447 * input/regression/tie-chord-partial.ly: new file.
1449 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1450 for \char markup command.
1452 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1454 * scm/define-music-types.scm (music-descriptions): consistency:
1455 Use solo-{one,two}-event iso. solo-[12]-event.
1457 * lily/part-combine-engraver.cc (process_music):
1458 Use solo-{one,two}-event iso. solo-[12]-event.
1460 * ly/declarations-init.ly (partCombineListener): add Timing as
1463 * flower/std-string.cc (string_copy): use copy ()
1465 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1467 2006-08-24 Graham Percival <gpermus@gmail.com>
1469 * Documentation/user/changing-defaults.itely, global.itely,
1470 lilypond-book.itely, page.itely: minor changes from mailist.
1472 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1474 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1477 * scm/define-context-properties.scm
1478 (translator-property-description): robustness: detect type errors
1479 in property definitions.
1481 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1482 after getting it from SCM.
1484 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1487 * lily/include/performer.hh (class Performer): strip get_tempo()
1490 * lily/midi-def.cc: strip file.
1492 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1494 * lily/include/context-def.hh (struct Context_def): use
1495 VIRTUAL_COPY_CONSTRUCTOR().
1497 * lily/source-file.cc: smobification.
1499 * lily/include/source-file.hh (class Source_file): smobify
1500 Source_file. Trim redundant members.
1502 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1503 clones after creation. This plugs a huge memory leak.
1505 * python/convertrules.py (FatalConversionError.sub_tempo):
1506 complete rule for \midi{ \tempo }
1508 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1510 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1512 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1514 * input/regression/optimal-page-breaking-hstretch.ly: test for
1515 ragged-last-bottom also
1517 * lily/paper-column-engraver.cc (finalize): make the end of a score
1518 breakable by default. This is to balance out a change in behaviour
1519 of the page-turn-breaker which no longer makes the end of a score
1522 * lily/paper-book.cc (pages): set the systems_ once the pages are
1525 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1526 Page_breaking interface.
1528 * lily/page-breaking.cc (class Page_breaking): make the interface
1529 more consistent and provide abstractions for dealing with
1532 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1533 algorithm. Use the new interface to Page_breaking.
1535 * lily/page-spacing.cc: better support for ragged-bottom and
1538 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1540 * python/convertrules.py (conv): warning on \tempo{}
1542 * ly/performer-init.ly: set tempoWholesPerMinute.
1544 * ly/midi-init.ly: remove \midi
1546 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1549 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1550 tempoUnitDuration for determining what to print.
1552 * lily/lyric-extender.cc: typo.
1554 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1556 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1559 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1561 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1562 eps-pad-boxes is set.
1564 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1566 * THANKS: update sponsors.
1568 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1570 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1572 * input/regression/tie-chord-untied.ly: new file.
1574 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1576 * scm/define-music-properties.scm (all-music-properties): add
1579 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1581 (headertext_nopics): sanitize no-examples text.
1583 * scm/page.scm (make-page-stencil): don't rely on extents of
1584 page-stencil. This fixes spurious space around .EPS files produced
1585 with the EPS backend.
1587 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1589 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1591 * lily/hara-kiri-engraver.cc (process_music): remember
1592 keepAliveInterfaces after processing \set
1594 * lily/lyric-extender.cc (print): support left/right-padding for
1597 * scm/documentation-generate.scm (string-append): revert lilypond/
1600 2006-08-20 Graham Percival <gpermus@gmail.com>
1602 * Documentation/user/lilypond.tely: clarification to
1603 license presentation (not to actual license).
1605 * Documentation/user/basic-notation.itely,
1606 instrument-notation.itely: minor changes.
1608 * input/ {regression, test}/+.ly: clarification to
1609 text (you can click on examples). Thanks, Mats!
1611 * input/manual/bar-lines.ly: adds ||: repeats.
1613 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1615 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1617 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1619 * Documentation/user/lilypond.tely: strip lilypond/ from info
1620 links, rename to category LilyPond
1622 * lily/pango-font.cc (description_string): new function.
1624 * VERSION: release 2.9.15
1626 * lily/spacing-engraver.cc (stop_translation_timestep): use
1627 Dscho's fix for spacing spanner.
1629 * scm/define-music-types.scm (music-descriptions): use
1630 apply-output-event for ApplyOutputEvent
1632 * lily/output-property-engraver.cc (listen_apply_output): rename
1633 from listen_layout_instruction.
1635 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1638 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1640 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1641 commandline args with contains, split by \n.
1643 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1644 write snippet-names file, call with -dread-file-list. Fixes
1645 command limitations on 64-bit systems.
1647 * input/regression/stencil-color-rotation.ly: new file.
1649 * lily/include/translator.hh (struct Acknowledge_information):
1650 revert: don't use Protected_scm in global objects, as GUILE can't
1651 handle gc_unprotect from automated destructors on MacOS X.
1653 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1654 color, not the original stencil. Fixes combinations of
1655 color/transparency/rotation.
1657 * scripts/lilypond-book.py (main): add --formats=eps for
1660 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1661 crash if spacing_ is nonexistent.
1663 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1665 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1666 \catcode`\@=12 in the LaTeX output.
1668 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1670 * scm/define-music-types.scm (music-descriptions):
1671 use sustain-event iso. sustain-pedal-event.
1673 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1675 * scripts/convert-ly.py: honour the -n command-line switch
1677 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1679 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1680 break specification.
1682 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1684 * Documentation/user: convert-ly the user manual
1686 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1688 * stepmake/aclocal.m4: version check patch (thanks MWD)
1690 * ly/music-functions-init.ly: robustness. Don't crash if
1691 currentBarNumber is not a number.
1693 * VERSION (PATCH_LEVEL): bump.
1695 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
1697 * stepmake/aclocal.m4: better version check; handle fooX.Y
1700 * ly/performer-init.ly: instrument name fixup.
1702 * input/manual/chord-names-jazz.ly (banterProperties):
1703 instrumentName update
1705 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1707 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1709 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1710 function. Use hash tables to check membership.
1712 * lily/general-scheme.cc (LY_DEFINE): new function.
1714 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1716 * lily/include/translator.hh (struct Acknowledge_information): add
1719 * ly/music-functions-init.ly: change name to BreathingEvent
1721 * input/regression/*.ly: apply it.
1723 * python/convertrules.py (conv): better instrumentName conversion
1726 * scm/define-music-types.scm (music-descriptions): add
1727 line-break-event to LineBreakEvent music
1729 * lily/music.cc (to_event): don't crash if music type not set.
1731 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1734 * lily/spacing-engraver.cc (stop_translation_timestep): set
1735 spacing for proportional notation too.
1737 * scm/translation-functions.scm (format-bass-figure): inspect
1740 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1742 2006-08-08 Joe Neeman <joeneeman@gmail.com>
1744 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1746 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1748 * scm/layout-page-layout.scm (make-page-from-systems): new function
1749 (optimal-page-breaks): use the new page-breaking calling convention
1751 * scm/define-context-properties.scm (all-user-translation-properties):
1754 * lily/paper-column-engraver.cc (stop_translation_timestep): add
1755 revokePageTurns functionality. If there is a special barline within
1756 the breakable region, break there instead of at the end of the region.
1758 * lily/paper-book.cc (pages): use the new page-breaking calling
1761 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
1763 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1765 * scripts/lilypond-book.py: insert \sourcefileline command in
1766 output, so lilypond error messages refer to the spot in the
1767 original .lytex / .itely sourcefile.
1769 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1771 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1772 space to next column for distance to fixed col.
1774 * VERSION (PACKAGE_NAME): release 2.9.14
1776 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1779 * lily/accidental-engraver.cc (process_acknowledged): don't create
1780 accidental for trill span event. This fixes spurious accidentals
1783 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
1785 * scm/define-grob-properties.scm (all-user-grob-properties):
1786 Clarify documentation of side-axis and direction. Thanks to Paul
1787 for the inspiration.
1789 * lily/bar-line.cc: Add documentation for "||:" also in the
1790 interface documentation.
1792 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1794 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1796 * lily/paper-column.cc (set_system): new function.
1798 * lily/spacing-engraver.cc (stop_translation_timestep): store
1799 SpacingSpanner refs in Paper_column.
1801 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1802 compute loose clique spacing using GraceSpacing/SpacingSpanner.
1804 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1806 * lily/beam-engraver.cc (listen_beam): add method for
1807 Grace_beam_engraver too.
1809 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
1811 * python/convertrules.py: Fix indentation bug that broke
1812 conversion of files older than 1.3.117.
1813 Fix escape error in the description for 2.9.6.
1815 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
1817 * lily/*-engraver.cc: convert all try_music functions to listen_*
1820 * lily/piano-pedal-engraver.cc: some additional cleanups: use
1821 enums to represent pedal types, and calculate more data statically.
1823 * scm/part-combiner.scm (recording-group-emulate): create a
1824 softcoded substitute for recording-group-engraver.cc.
1826 * lily/music.cc: make a common transpose function for events and
1829 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1830 ManualMelismaEvent, and obsoletes Melisma_translator.
1832 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1834 * input/test/instrument-name-align.ly: update version.
1836 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
1838 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1839 Doc the --pdf flag to lilypond-book.
1841 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
1843 * Documentation/topdocs/NEWS.tely (Top): add description.
1845 * input/regression/tuplet-full-length-note.ly: add file.
1847 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1848 always store axis group.
1850 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1852 * input/regression/instrument-switch.ly: new file.
1854 * lily/instrument-switch-engraver.cc (process_music): new file.
1856 * ly/engraver-init.ly: add Instrument_switch_engraver
1858 * ly/music-functions-init.ly: \instrumentSwitch
1860 * scm/define-context-properties.scm
1861 (all-user-translation-properties): add instrumentCueName
1863 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1865 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1867 * ly/music-functions-init.ly: music function \transposition.
1869 * lily/parser.yy (command_element): softcode \transposition.
1871 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1872 (process_music): oops.
1874 * lily/instrument-name-engraver.cc (start_spanner): new
1875 function. Create spanner when property changes.
1876 (stop_spanner): new function.
1878 * python/convertrules.py (conv): add rule.
1880 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1881 shortInstrumentName iso. instr.
1883 * scm/output-ps.scm (dashed-line): add phase argument to
1886 * lily/bar-line.cc (dashed_bar_line): new function.
1887 (compound_barline): support \bar "dashed".
1889 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1890 --output=DIR to DIR/BASE if it is a dir.
1892 * flower/file-name.cc (file_part): new function
1893 (dir_part): new function
1895 * lily/lily-parser-scheme.cc (LY_DEFINE):
1897 * DEDICATION: update
1899 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1901 * lily/instrument-name-engraver.cc: formatting.
1903 * python/convertrules.py (conv): bugfix for \epsfile.
1905 2006-07-25 Joe Neeman <joeneeman@gmail.com>
1909 * lily/gourlay-breaking.cc: Oops, these should have been included
1912 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1914 * scripts/*.py (program_name): cleanup relocation snippets.
1916 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1918 2006-07-24 Joe Neeman <joeneeman@gmail.com>
1920 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1921 page-breakable by default
1923 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1924 correctly calculated for a single-system page
1926 * scm/lily-library.scm (interval-sane?): also check that the first number is no
1927 bigger than the second number
1929 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1930 acknowledge that we aren't satisfying constraints)
1932 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1935 * lily/grob.cc (pure_height): add minimum-Y-extent
1937 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1940 * lily/constrained-breaking.cc: convert code to use new Matrix class
1941 (get_best_solution): new function
1943 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1944 is a page with no systems
1946 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1948 * VERSION (PACKAGE_NAME): release 2.9.13
1950 * scm/define-grobs.scm (all-grob-descriptions): remove stray
1953 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1955 * Documentation/topdocs/NEWS.tely (Top): doc new features.
1957 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1960 * scm/define-grob-properties.scm (all-user-grob-properties):
1961 remove grace-space-factor.
1963 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1964 grace-spacing-interface
1965 (spacing-options-interface): add.
1967 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1969 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1971 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1972 GraceSpacing object.
1974 * lily/note-spacing.cc: fix prop list formatting
1976 * lily/beaming-pattern.cc (de_grace): new function. Sensible
1977 beaming for grace notes too.
1979 * input/regression/spacing-grace.ly: update.
1981 * lily/grace-spacing-engraver.cc: new file.
1983 * lily/spacing-spanner.cc: add strict-grace-spacing.
1985 2006-07-20 Graham Percival <gpermus@gmail.com>
1987 * lily/parser.yy: compile fix.
1989 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1991 * scm/define-grobs.scm (all-grob-descriptions): typo.
1993 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1994 .eps extension from includegraphics.
1996 * scripts/lilypond-book.py (main): add support for --pdf.
1998 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1999 callback to compute common shortest duration.
2000 (set_springs): typo.
2002 * scm/define-grob-properties.scm (all-user-grob-properties): add
2003 strict-grace-spacing.
2005 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2006 support float_grace_columns_.
2008 * lily/spacing-options.cc (init_from_grob): new file.
2010 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2012 * input/regression/spacing-loose-grace.ly: new file.
2014 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2016 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2017 tupletFullLengthNote too. Choose right bound depending on value.
2019 * input/regression/tuplet-full-length-note.ly: new file.
2021 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2023 * lily/*-performer.cc: Converted try_music to listen_*
2025 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2026 as a stream-event internally. Introduce event_cause (), deprecate
2029 * scm/define-music-types.scm: Removed BusyPlayingEvent
2031 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2033 * Documentation/user/advanced-notation.itely (Font selection):
2034 Document how to get a list of available fonts using 'lilypond
2035 -dshow-available-fonts blabla'.
2037 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2039 * GNUmakefile.in: filter lily-XXX.pdf files.
2041 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2043 * scm/define-grob-properties.scm (all-internal-grob-properties):
2044 remove delta-pitch. Use delta-position everywhere.
2046 * scm/output-lib.scm (fall::print): use new order.
2048 * scm/output-ps.scm (path): reorder arguments.
2050 * scm/output-svg.scm (path): support for path primitive.
2052 * input/regression/bend-after.ly: new file.
2054 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2055 recipe for eps -> pdf conversion.
2057 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2059 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2062 2006-07-19 Graham Percival <gpermus@gmail.com>
2064 * input/manual/screech-boink.ly: moved to here.
2066 * input/screech-boink.ly: deleted.
2068 * scm/define-grob-properties.scm: clarify doc string.
2070 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2072 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2074 * scm/output-ps.scm (path): define path.
2076 * scm/define-stencil-commands.scm
2077 (ly:register-stencil-expression): add path.
2079 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2081 * ly/engraver-init.ly: add Fall_engraver
2083 * lily/parser.yy (music_function_event): allow musicfunction
2084 without music arg as music_function_event.
2086 * lily/grob-scheme.cc (LY_DEFINE):
2087 ly:grob-robust-relative-extent. New function.
2089 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2091 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2093 * scm/output-lib.scm (fall::print): new function
2095 * lily/fall-engraver.cc (stop_fall): new file.
2097 * ly/music-functions-init.ly: alphabetise.
2099 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2102 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2104 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2106 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2109 * lily/translator-group.cc (connect_to_context): non const error message.
2111 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2113 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2116 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2118 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2120 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2123 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2125 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2127 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2129 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2131 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2133 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2135 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2137 * scm/layout-page-layout.scm: Define module, tidy code, use more
2138 functions iso. a single big one.
2140 * scm/layout-page-dump.scm: move page dump functions used in two
2141 pass spacing to this file. Define module.
2143 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2146 * ly/paper-defaults.ly: use module layout-page-layout.
2148 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2150 * lily/music.cc: Revised MusicEvent event class. It now contains
2151 event data directly instead of encapsulating it in music. The
2152 previously used class is renamed to OldMusicEvent.
2154 * lily/stream-event.cc: Stream events are now probs.
2156 * lily/translator-group.cc, lily/translator.cc: Translators can
2157 now listen directly to stream events, by using macros
2158 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2160 * lily/arpeggio-engraver.cc: Converted to use new event system
2162 * THANKS: Corrected spelling mistake.
2164 2006-07-12 Graham Percival <gpermus@gmail.com>
2166 * Documentation/user/SConscript, make/lilypond-vars.make,
2167 input/GNUmakefile: doc build looks in input/manual instead
2170 * input/manual/ GNUmakefile, SConscript: build files for
2173 * input/test/ various: some files moved to input/manual/
2175 * Documentation/user/basic-notation.itely: small updates;
2176 thanks Kieren and Charles!
2178 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2180 * VERSION (PACKAGE_NAME): release 2.9.11
2182 * Documentation/topdocs/NEWS.tely (Top): update prop value
2184 * Documentation/user/basic-notation.itely (Tuplets): new property
2187 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2189 * python/convertrules.py (conv): tweaks.
2191 * VERSION (PATCH_LEVEL): bump version.
2193 * python/convertrules.py (conv): add rule for
2194 tupletNumberFormatFunction.
2196 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2197 tupletNumberFormatFunction.
2199 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2200 text through 'text callback.
2202 * lily/time-scaled-music-iterator.cc (construct_children): copy
2203 tweaks generated events.
2205 * scm/define-context-properties.scm
2206 (all-user-translation-properties): remove tupletNumberFormatFunction
2208 * lily/tuplet-engraver.cc (process_music): don't read
2209 tupletNumberFormatFunction
2211 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2214 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2216 * lily/global-context-scheme.cc: Separated ly:run-translator into
2219 * lily/score-engraver.cc, lily/score-performer.cc,
2220 scm/define-context-properties.scm: Make paper/midi output
2221 accessable as a context property.
2223 * lily/score-translator.cc, lily/score-context.cc: Removed.
2225 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2227 * scm/ps-to-png.scm (Module):
2228 * scm/framework-tex.scm (Module):
2229 * scm/framework-ps.scm (Module):
2230 * scm/backend-library.scm (Module):
2231 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2232 "dDEVICEHEIGHTPOINTS".
2234 2006-07-04 Graham Percival <gpermus@gmail.com>
2236 * Documentation/user/ various: general improvements to
2237 "working with lilypond files" section.
2239 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2241 * lily/sequential-iterator.cc: Change the default get_music_list
2242 to read elements-callback music property
2244 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2245 processing of multimeasure rests. Softcoded
2246 sequential-music-iterator.
2248 * lily/sequential-music-iterator.cc: Removed.
2250 2006-06-28 Graham Percival <gpermus@gmail.com>
2252 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2254 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2256 * lily/parser.yy: Wrap non-post-events in EventChords before
2257 assigning them to identifiers.
2259 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2261 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2262 gives correct vertical placement of \bar ":" in all staff
2263 sizes. Thanks Martial!
2265 2006-06-26 Graham Percival <gpermus@gmail.com>
2267 * Documentation/user/invoking.itely : minor update from mailist.
2269 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2271 * lily/ various: Introduce stream events of types Prepare,
2272 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2273 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2275 * lily/global-context*.cc: Time is now -inf before iteration
2278 * lily/include/context.hh: Removed unique_, init_
2280 * Documentation/topdocs/NEWS: Make the feathered beam example
2281 avoid triggering a bug.
2283 2006-06-24 Graham Percival <gpermus@gmail.com>
2285 * Documentation/user/ various: small additions from mailist.
2287 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2289 * ly/performer-init.ly: Add some missing links in the context
2290 hierarchy for MIDI output. There are probably some more missing!
2292 2006-06-21 Graham Percival <gpermus@gmail.com>
2294 * Documentation/user/ various: minor spelling fixes;
2295 thanks Dave Luttinen!
2297 * Documentation/user/ various: small clarifications;
2298 thanks Anthony Youngman!
2300 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2302 * po/fr.po: add \n appropriately.
2304 * lily/lexer.ll: remove ? from version-seen?
2306 2006-06-19 John Mandereau <john.mandereau@free.fr>
2308 * po/fr.po; update translation, by Jean-Charles Malahieude and
2311 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2313 * THANKS: add Markus Schneider.
2315 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2316 Staff_symbol_engraver
2318 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2319 replace staff_engraver
2321 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2324 * lily/staff-collecting-engraver.cc
2325 (acknowledge_end_staff_symbol): new function
2327 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2329 * lily/staff-collecting-engraver.cc
2330 (acknowledge_end_staff_symbol): new function.
2332 * lily/main.cc: switch on relocation by default.
2334 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2336 * lily/spacing-spanner.cc (musical_column_spacing): set
2337 compound_fixed_note_space to 0.0. Document why.
2339 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2340 range of inverse_hooke_
2341 (Simple_spacer): init completely.
2343 (get_line_configuration): don't use cols.resize(); it introduces
2346 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2348 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2350 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2351 try. Divide by beatlength.
2353 * input/regression/beaming-ternary-metrum.ly: update doc.
2354 add beatLength hack.
2356 * scm/music-functions.scm (make-time-signature-set): add
2357 standard-beat-grouping.
2359 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2361 * input/regression/tie-whole.ly: new file.
2363 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2364 cross center of note head in case of invisible stem.
2366 2006-06-16 Graham Percival <gpermus@gmail.com>
2368 * Documentation/user/ various: small fixes from mailist.
2370 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2372 * lily/breathing-sign.cc (offset_callback): idem.
2374 * lily/align-interface.cc (align_to_fixed_distance): remove
2377 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2380 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2382 * VERSION (PACKAGE_NAME): release 2.9.9
2384 * ly/lilypond-book-preamble.ly: add \version
2386 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2388 * scripts/lilypond-book.py (PREAMBLE_LY): include
2389 lilypond-book-preamble.ly
2391 * lily/stem.cc (get_beaming): return max of 0 and
2392 scm_ilength. Fixes slurring from/to beams.
2394 * ly/lilypond-book-preamble.ly: new file.
2396 * lily/slur.cc: add inspect-index feature.
2398 2006-06-13 Graham Percival <gpermus@gmail.com>
2400 * Documentation/user/tutorial.itely: trivial fix.
2402 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2404 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2405 all non-event music in the parser via MAKE_SYNTAX.
2407 * lily/parser-scheme.cc: Add ly:parser-error function
2409 * scm/paper.scm: fix typo
2411 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2415 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2418 * buildscripts/output-distance.py (test_compare_signatures):
2420 (read_signature_file): use new signature format.
2422 * scm/stencil.scm (write-system-signature): simpler signature
2425 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2428 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2429 stem_end_position, but estimate instead.
2431 * lily/tuplet-bracket.cc (calc_positions): look at
2432 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2433 brackets narrower than beams.
2435 * lily/lexer.ll: set version-seen? even if version is
2438 * lily/rest.cc (y_offset_callback): bugfix: decide position
2439 override based on scm_is_number(). Fixes \rest on center staff
2442 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2443 patterns for 16th triplets.
2445 2006-06-10 Graham Percival <gpermus@gmail.com>
2447 * Documentation/user/ page.itely, global.itely: editing
2450 * Documentation/user/ various: findex -> funindex.
2452 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2454 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2455 insert extra tuplet events.
2457 2006-06-10 Graham Percival <gpermus@gmail.com>
2459 * Documentation/user/programming-interfaces.itely: add
2462 * python/convertrules.py: add annotatefoo -> annotate-foo
2465 * Documentation/user/global.itely: start editing.
2467 * Documentation/user/page.itely: major editing, new spacing
2470 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2472 * scm/define-markup-commands.scm (wordwrap-markups): use
2473 output-def 'line-width if undefined.
2475 * HACKING: trim outdated info.
2477 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2479 * scm/define-grobs.scm (all-grob-descriptions): Add
2480 line-spanner-interface to all grobs that already have
2481 text-spanner-interface or dynamic-text-spanner-interface
2483 * scm/page.scm: Rename annotate{headers,systems,page}->
2486 * input/regression/page-spacing.ly,
2487 input/regression/page-layout-manual-position.ly: idem
2489 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2491 * lily/line-spanner.cc: cleanup property list.
2493 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2494 generator expressions (2.3 compat).
2496 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2498 * lily/vertical-align-engraver.cc: Make sure that the
2499 align{Above,Below}Context properties are included in the automatic
2502 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2504 * scm/paper-system.scm (paper-system-annotate): also annotate the
2505 estimated pure-Y-extent
2507 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2509 * lily/system.cc (break_into_pieces): set the estimated height
2510 of each child system
2512 * lily/stem.cc (pure_height): new pure-Y-extent callback
2514 * lily/staff-symbol-referencer.cc (callback): don't destroy
2515 the staff-position property
2517 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2518 consider_suicide into two functions
2520 * lily/constrained-breaking.cc (resize): use the new pure
2521 callbacks to estimate the height of a system
2523 * lily/axis-group-interface.cc (pure_group_height): new
2524 side-effect-free VerticalAxisGroup height-callback
2526 * lily/align-interface.cc (get_extents_aligned_translates):
2527 split align_elements_to_extents into two functions
2528 (get_pure_child_y_translation): new function
2530 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2532 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2534 * lily/paper-score.cc: cache break_indices and columns
2536 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2538 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2540 * lily/font-config.cc (init_fontconfig): do the init if
2541 cache_file, but don't look at cache_file.
2543 * input/regression/quote-tie.ly: new file.
2545 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2546 to Head_event_tuple, so we deal gracefully with ties on
2549 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2552 2006-06-08 Graham Percival <gpermus@gmail.com>
2554 * input/test/ smart-transpose.ly, reverse-music.ly:
2555 \applyMusic to music functions update, thanks Michael!
2557 2006-06-07 Graham Percival <gpermus@gmail.com>
2559 * input/test/ add-staccato.ly, add-text-script.ly,
2560 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2561 music functions update, thanks to Michael Meixner.
2563 * Documentation/user/music-glossary.tely: small fix
2566 * Documentation/user/ various: minor additions from mailist.
2568 * Documentation/user/lilypond.tely, basic-notation.itely:
2569 small test of @funindex. (works here)
2571 * input/test/font-table.ly: reduce size to partially
2572 de-ugly version in manual.
2574 * Documentation/user/page.itely: new file (split former
2575 "global issues" into "page settings" and "non-musical
2578 * Documentation/user/ various: fix @ref{}s to match
2579 new chapter names (above).
2581 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2583 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2585 2006-06-06 Graham Percival <gpermus@gmail.com>
2587 * Documentation/user/advanced-notation.itely: add example
2588 for segno/coda on barline.
2590 * tex/texinfo.tex: merge from upstream.
2592 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2594 * scripts/lilypond-book.py (process_snippets): Argument fix.
2597 * buildscripts/builder.py:
2600 * Documentation/user/SConscript: More SCons fixes.
2602 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2604 * lily/font-config.cc (init_fontconfig): Only initialize if
2605 global cache_file is found.
2607 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2609 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2612 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2614 * VERSION (PACKAGE_NAME): release 2.9.8
2616 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2617 function. Delay ledger modifying ledgered grobs to
2618 stop_translation_timestep(), to ensure that we're ledgering
2619 according to the new spanner.
2620 (acknowledge_staff_symbol): don't check for non-NULL
2621 staff_sym->get_bound()
2623 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2626 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2629 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2630 directly from srcdir/stepmake/aclocal.m4
2632 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2635 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2637 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2639 * lily/simple-spacer.cc (get_line_configuration): add
2640 keep-inside-line rods
2641 (struct Column_desc): add constructor
2642 (struct Rod_desc): add constructor
2643 (get_line_forces): check for forced page breaks here too
2645 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2646 support/elements cycles between InstrumentNames and AxisGroups
2648 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2650 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2652 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2653 make-txt-files target.
2655 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2656 make-txt-files target.
2658 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2660 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2663 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2665 * Documentation/user/instrument-notation.itely,
2666 input/regression/breathing-sign-ancient.ly,
2667 input/test/divisiones.ly: Removed redundant property settings for
2670 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2671 fix lyrics alignment problems. They are implemented now as scheme
2672 functions that add the appropriate unicode char to the first lyric
2673 event rather than adding a separate lyric event. Minor edit of
2676 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2678 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2679 pollute src dir with built .txt files, but install directly from
2680 Documentation/topdocs/out/
2682 * buildscripts/output-distance.py
2683 (ComparisonData.create_html_result_page): put version/directories
2686 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2689 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2690 Patch by Karl Hammar
2692 * buildscripts/readlink.py: add file.
2693 Patch by Karl Hammar
2695 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2697 * lily/tuplet-number.cc (print): prevent stencil from being
2700 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2702 * scm/stencil.scm (write-system-signature): explicitly
2703 -well, superfluously- close output port.
2705 * buildscripts/output-distance.py (main): oops. Add extra argument.
2707 2006-06-05 Graham Percival <gpermus@gmail.com>
2709 * Documentation/user/music-glossary.tely: clarified example
2710 from Francisco Vila, thanks!
2712 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2714 * input/regression/spacing-section.ly: new file.
2716 * lily/input.cc (programming_error): new function.
2718 * lily/spacing-engraver.cc (try_music): new function. Accept
2719 spacing-section-event
2721 * lily/spacing-spanner.cc (set_springs): take slices of all
2722 columns for spacing.
2724 * lily/include/paper-column.hh (class Paper_column): add
2725 Paper_column::compare.
2727 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2729 * scm/define-music-types.scm (music-descriptions): add
2732 * lily/music-iterator.cc (report_event): use programming_error for
2733 sending non-event error.
2735 * lily/input.cc (programming_error): new function
2737 * buildscripts/output-distance.py (main): use compare-XXX for
2739 (main): --threshold option, default at 0.30
2741 * output-distance.py (main): add --threshold option.
2743 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
2745 * scm/paper-system.scm (paper-system-annotate): fix problem when
2746 annotating an empty system
2748 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2750 * GNUmakefile.in: reinstate old web tar/copying.
2752 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2754 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2755 nothing changes. (Erik S)
2757 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2760 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
2762 * scm/define-markup-commands.scm (whiteout): do not force
2763 foreground color of argument markup to black.
2765 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2766 the left of the arrow, instead of below the arrow name, so that,
2767 when two little arrows are vertically stacked, their dimensions
2768 and name should not overlap. Add a color key parameter.
2770 * scm/paper-system.scm (paper-system-annotate): Annotate
2771 next-space+next-padding instead of next-space. Annotate space
2772 between next-padding and next-space+padding, respectively, and
2773 following system extent and refpoint-Y-extent. Use colors.
2775 * scm/page.scm (annotate-page): translate annotations slightly to
2778 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2780 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2781 fix for x-staff slurs. Thanks Joe!
2783 * buildscripts/output-distance.py
2784 (SystemLink.output_expression_change_count): keep track of changed
2785 details, and dump in details html page.
2787 * input/regression/figured-bass-staff.ly: add note about setting
2788 properties in Staff context.
2790 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2791 add slurs and ties to support too.
2793 * buildscripts/output-distance.py (main): set dest_dir
2794 argument. Add --max-count option.
2796 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
2798 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
2799 shortcuts for special unicode chars that are useful in chant
2800 notation. Revised exisiting and added new comments.
2802 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2804 * make/mutopia-rules.make: remove duplicate recipe.
2806 2006-06-02 Werner Lemberg <wl@gnu.org>
2808 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2809 Add support for U+0132 (IJ) and U+0133 (ij).
2811 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2813 * buildscripts/output-distance.py (FileLink): new class. collect
2814 info systems from one .ly file.
2815 (FileLink.link_files_for_html): further tweaks.
2817 2006-06-02 Graham Percival <gpermus@gmail.com>
2819 * tex/texinfo.tex: partial fix for @funindex.
2821 * Documentation/user/macros.tely: uncomment @funindex (doesn't
2824 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2826 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2828 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2829 @example too. Backportme.
2831 2006-06-02 Graham Percival <gpermus@gmail.com>
2833 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2834 from Werner Lemberg.
2836 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
2838 * Documentation/user/music-glossary.tely: additional spanish
2839 updates and a lyrics fix in an example.
2841 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
2843 * scm/define-grob-properties.scm: Previous patch contained
2844 spurious line from another patch not yet committed. Fixed.
2846 * scm/define-grob-properties.scm: Add missing doc strings for
2849 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
2851 * buildscripts/output-distance.py
2852 (ComparisonData.write_text_result_page): separate the scores, sort
2855 * scm/framework-eps.scm (output-classic-framework): start at 1 for
2858 * buildscripts/output-distance.py (me_path): use argv[0] for
2860 (ComparisonData.img_cell): use colored borders.
2862 * scm/stencil.scm (write-system-signature): escape newlines too.
2863 (write-system-signature): use (1,-1) interval for empty interval
2865 2006-01-01 Graham Percival <gpermus@gmail.com>
2867 * Documentation/user/music-glossary.tely: Spanish updates
2868 from Francisco Vila.
2870 * Documentation/user/lilypond-book.itely: addition from
2873 * Documentation/user/ various: edits, small additions
2876 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
2878 * GNUmakefile.in (tree-lib-prefix-current):
2879 (tree-share-prefix-current): Use version number in tree, add
2882 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
2884 * GNUmakefile.in: write VERSION, again.
2886 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2887 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2889 * stepmake/aclocal.m4: robuster version detection.
2891 * buildscripts/output-distance.py
2892 (ComparisonData.create_html_result_page): copy only if file
2893 exists, fixup src paths.
2895 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2897 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
2899 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2900 Another datarootdir reto.
2902 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2903 available. This should be moved to postinstall-lilypond-doc.
2905 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2907 * GNUmakefile.in: simplify local-WWW-post.
2908 remove -type l from find.
2910 * buildscripts/output-distance.py (ComparisonData.compare_trees):
2911 fixes. Don't follow symlinks.
2912 (ComparisonData.create_html_result_page): remove previous results.
2913 insert ../python in path.
2915 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2917 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
2919 * config.make.in (datadir): Add datarootdir to silence autoconf.
2921 * stepmake/aclocal.m4: Update for autoconf-2.59d.
2923 2006-05-31 Erlend Aasland <erlenda@gmail.com>
2925 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2927 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2928 slash beams too wide.
2930 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
2932 * VERSION: release 2.9.7
2934 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
2936 * lily/relocate.cc (read_relocation_dir): Do not blindly
2939 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
2941 * lily/parser.yy: replace THIS by PARSER
2943 * Documentation/index.html.in: add link to test-results.html page.
2945 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2947 * scm/translation-functions.scm (format-bass-figure): translate
2948 digits over 10 to the left
2950 * scm/define-markup-commands.scm (translate-scaled): new markup.
2952 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2955 * ly/engraver-init.ly: add Figured_bass_engraver
2957 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2959 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2961 * lily/score-engraver.cc (announce_grob): only note START announces.
2963 * lily/include/engraver-group.hh (Translator_group):
2964 acknowledge_hash_table_ is now drul.
2966 * lily/engraver.cc (announce_end_grob): new method.
2968 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2970 * lily/translator-dispatch-list.cc (create): take start_end argument.
2972 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2973 acknowledge_static_array_ to drul
2975 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2977 * scm/define-grob-interfaces.scm
2978 (bass-figure-alignment-interface): add bass-figure-alignment-interface
2980 * scm/define-grobs.scm (all-grob-descriptions): add
2981 BassFigureAlignmentPositioning
2983 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2984 number stays up to date. Backportme.
2986 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
2988 * Documentation/user/basic-notation.itely (Bar lines): Document
2991 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
2993 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2995 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2996 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
2999 * Resurrect `scons lily' build.
3001 * SConstruct (symlink_tree): Bugfix: link
3002 music-drawing-routines.ps to file iso directory.
3004 * lily/SConscript: Remove kpath-guile from LIBS.
3006 * SConstruct (libdir_package_version): Typo.
3007 (configure): Comment-out fontforge for lack of fontforge.pc .
3008 Also add libdir* to environment.
3010 2006-05-30 Graham Percival <gpermus@gmail.com>
3012 * Documentation/user/ various: minor additions from mailist and
3015 2006-05-30 Paco <fravd@ya.com>
3017 * Documentation/user/music-glossary.tely: numerous corrections and
3018 some new translations.
3020 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3024 * buildscripts/output-distance.py
3025 (ComparisonData.create_html_result_page): new routine: summarise
3026 results in HTML page with images.
3027 (ComparisonData.create_text_result_page): create summary text files too.
3029 * GNUmakefile.in (web-ext): package .signature files too. They
3032 * scm/stencil.scm (write-system-signature): typo.
3034 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3036 * scm/stencil.scm (write-system-signature): better escaping.
3037 only write signature for music systems, not for markup systems.
3039 * scm/framework-ps.scm (output-framework): dump-signatures support
3042 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3044 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3045 for -dno-point-and-click
3047 * lily/grob.cc (get_print_stencil): don't read
3048 point_and_click_global to determine whether to set grob-cause.
3050 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3052 * buildscripts/output-distance.py (main): new function.
3053 (ComparisonData): new class.
3055 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3056 careful with generating new LedgerLineSpanners.
3058 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3060 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3061 context. This fixes double ledger lines in output.
3063 * lily/system.cc (get_paper_system): remove 3 layer limit.
3065 * buildscripts/output-distance.py (SystemLink.distance): new
3066 file. Compare signatures.
3068 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3070 * lily/grob-array.cc (remove_duplicates): rename from
3071 uniq(). Sort before calling uniq() so it actually works.
3073 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3075 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3076 \version from lilypond file snippet.
3077 (Lilypond_file_snippet.ly): oops. typo.
3078 (find_toplevel_snippets): urgh. again.
3080 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3081 prevent duplicated broken items in output.
3083 * scm/framework-eps.scm (output-classic-framework): only dump if
3084 dump-signatures is set.
3086 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3088 * scm/stencil.scm (write-system-signature): new routine: write
3089 python parseable signature of a separate paper system.
3092 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3094 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3098 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3100 * translator-group.cc: send music events to engravers in
3101 non-bottom contexts.
3103 * tuplet-engraver.cc: process tuplet brackets in correct order.
3105 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3107 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3108 arg 2 might point us to a new binary (patch by Karl Hammar)
3110 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3112 * VERSION (PACKAGE_NAME): release 2.9.6
3114 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3116 * Documentation/user/*.itely: 2nd
3117 attempt: replace funindex -> findex globally.
3119 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3121 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3122 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3124 * scm/define-music-display-methods.scm: display methods for
3125 breaks. Fix \applyOutput.
3127 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3129 * Documentation/user/macros.itexi: comment out funindex expansion.
3131 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3134 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3135 Karl Hammar. Backportme.
3137 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3139 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3141 * Documentation/user/programming-interface.itely (Running a
3142 function on all layout objects): idem.
3144 * Documentation/user/introduction.itely (Automated engraving):
3145 update \applyOutput syntax
3147 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3148 remove debugging hook.
3150 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3153 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3155 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3156 TEXI2DVI_FLAGS to texi2dvi invocation.
3158 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3160 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3161 works. More work is done by iterator now, and engraver has been
3162 very much simplified.
3164 * lily/translator-group.cc: try_music is now invoked through a
3167 * lily/*-iterator.cc: Massive cleanups. Junked
3168 try_music_in_children globally. Renamed try_music to report_event,
3169 and made that method descend to a bottom context automatically.
3171 * lily/event-iterator.cc: New file.
3173 * lily/output-property-iterator.cc,
3174 lily/old-lyric-combine-music-iterator.cc: Removed.
3176 * python/convert-rules.py: Modified the syntax for \applyOutput.
3178 2006-05-23 Graham Percival <gpermus@gmail.com>
3180 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3183 * Documentation/user/ various: stuff that might have helped
3184 to fix the pdf creation, plus some minor doc additions.
3186 * Documentation/user/changing-defaults.itely: remove @b from
3187 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3189 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3191 * lily/beaming-pattern.cc (beamify): deal with negative start
3192 moments for beaming patterns.
3194 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3196 * lily/beaming-info.cc (beamify): new function: read beatLength
3197 and beatGrouping from context.
3199 * input/regression/beam-beat-grouping.ly (Module): new file.
3201 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3203 * lily/beam.cc (get_beam_segments): generate events for
3204 max_connect_ case too.
3205 (get_beam_segments): read Stem::max-beam-connect.
3207 * input/regression/beam-single-stem.ly: new file.
3209 * lily/stem.cc (set_beaming): use #f as signaling value for
3212 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3214 * lily/beam.cc (set_beaming): read clip-edges property.
3215 (calc_direction): don't suicide for single stem.
3217 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3218 argument, remove 1<<15 hack. Remove clip_edges()
3220 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3222 2006-05-21 Graham Percival <gpermus@gmail.com>
3224 * Documentation/user/basic-notation.itely: reorg.
3226 * Documentation/user/ various: minor fixes.
3228 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3230 * lily/stencil-expression.cc (register_stencil_head): opps, append
3231 to cdr of static SCM object.
3233 2006-05-19 Graham Percival <gpermus@gmail.com>
3235 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3236 update framework for command index. DOC WRITERS: use @funindex
3237 instead of @cindex @code{}.
3239 * Documentation/user/ various: replace @cindex @code{} => @funindex
3241 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3243 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3244 case positions is set manually.
3246 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3248 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3251 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3253 * Documentation/user/changing-defaults.itely (Contexts explained):
3254 use absolute dimension for @image.
3256 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3257 out image for illustration too.
3258 ($(outdir)/%.png): add more png <-> eps rules.
3260 2006-05-17 Graham Percival <gpermus@gmail.com>
3262 * Documentation/user/ various: remove trailing whitespace, cosmetic
3263 change to reduce changes produced by diff.
3265 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3267 * lily/main.cc (do_chroot_jail): correctness tweak.
3269 * python/lilylib.py (system): import subprocess in system () only.
3271 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3273 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3274 variable. Backportme.
3276 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3278 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3280 2006-05-17 Werner Lemberg <wl@gnu.org>
3282 * lily/lexer.ll (init_signature_has_table): Add
3283 `scm-scm-music-music'.
3285 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3286 (Generic_prefix_music_scm): Add rule for it.
3288 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3289 `quoted-transposition' property.
3291 * ly/music-functions-init.ly (transposedCueDuring): New function.
3293 * scm/define-music-properties.scm (all-music-properties): Updated.
3295 * Documenation/topdocs/NEWS.itely: Document it.
3297 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3299 * python/lilylib.py (system): move import subprocess to system()
3302 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3304 * VERSION (PATCH_LEVEL): release 2.9.5
3306 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3309 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3311 2006-05-16 Graham Percival <gpermus@gmail.com>
3313 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3315 * Documentation/user/ various: minor fixes.
3317 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3319 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3321 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3323 * Documentation/user/advanced-notation.itely (Instrument names):
3324 Modified obsolete instruction on how to move instrument names away
3325 from the staves. Hmm, at second thought the bug probably has been
3326 solved, so the full bug description should probably be removed.
3328 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3330 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3331 currentCommandColumn.
3333 * lily/hairpin.cc (print): also add padding for non-neighbor
3336 * scm/define-context-properties.scm
3337 (all-user-translation-properties): add hairpinToBarline
3339 * input/regression/hairpin-to-barline.ly: new file.
3341 * lily/context.cc (internal_send_stream_event): thinko fix.
3343 * lily/tie.cc (set_default_control_points): robustness fix.
3345 * python/musicxml.py (Part.interpret): don't complain about
3346 incomplete measures.
3348 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3349 new music if last_event_chord() returned None.
3351 * python/musicxml.py (Part.interpret): skip back over chord notes.
3353 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3355 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3356 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3357 lily/slash-repeat-engraver.cc,
3358 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3359 iterator sends PercentEvents
3361 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3362 rework tuplets: send start/stop events to engraver
3364 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3365 dispatchers event-source and events-below to Context
3367 2006-05-15 Graham Percival <gpermus@gmail.com>
3369 * Documentation/user/README.txt: update info for doc writers.
3371 * Documentation/user/programming-interface.itely: integrate
3372 Nicolas' fixes for chapter rewrite.
3374 * Documentation/user/ various: minor fixes.
3376 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3378 * lily/clef-engraver.cc: cleanup.
3380 * Documentation/user/GNUmakefile: dist context-example.eps too.
3382 * lily/key-engraver.cc (create_key): use
3383 explicitKeySignatureVisibility for cancellation too.
3385 * lily/font-config.cc (init_fontconfig): don't close file if
3388 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3390 * Documentation/topdocs/NEWS.tely: niente and rotation news
3392 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3394 * lily/include/stencil.hh
3395 * lily/stencil.cc (rotate): new function. Makes it possible
3396 to rotate a stencil around a given offset.
3398 * lily/grob.cc (get_print_stencil): add rotation support
3400 * lily/stencil-interpret.cc (interpret_stencil_expression):
3401 add rotation support
3403 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3405 * scm/define-grob-properties.scm: add 'rotation property
3407 * scm/define-markup-commands.scm: add rotate markup command
3409 * scm/output-ps.scm: add rotation support in PostScript backend
3411 * scm/output-svg.scm: add rotation support in SVG backend
3413 2006-05-13 Graham Percival <gpermus@gmail.com>
3415 * Documentation/user/music-glossary.itely: French correction.
3417 * Documentation/user/programming-interface.itely: major
3418 new docs, some reorg, some info from Nicolas.
3420 * Documentation/user/ various: small fixes.
3422 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3424 * Documentation/user/programming-interface.itely (Markup
3425 programmer interface): Remove duplicate text.
3427 2006-05-12 Graham Percival <gpermus@gmail.com>
3429 * Documentation/user/context-example.eps: new file.
3431 * Documentation/user/changing-defaults.itely: set up file to
3434 * Documentation/user/programming-interface.itely: changes
3437 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3439 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3441 2006-05-11 Graham Percival <gpermus@gmail.com>
3443 * Documentation/user/programming-interface.itely: first round of
3444 editing and merging emails from Nicolas.
3446 * Documentation/user/scheme-tutorial: minor edit.
3448 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3450 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3452 (Xml_node.message): use it.
3454 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3455 oops. Add duration argument.
3457 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3459 * lily/paper-column-engraver.cc (make_columns):
3460 * scm/define-grobs.scm: Revert my previous change and set the default
3461 in define-grobs.scm instead.
3463 2006-05-09 Graham Percival <gpermus@gmail.com>
3465 * Documentation/user/changing-defaults.itely: general editing,
3466 info about \set and \override.
3468 * Documentation/user/tweaking.itely, advanced-notation.itely:
3469 fixes from Dave Luttinen, thanks!
3471 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3473 * lily/paper-column-engraver.cc (make_columns): By default, a column
3474 needs to be breakable.
3476 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3478 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3480 (musicxml_time_to_lily): idem
3481 (musicxml_key_to_lily): idem
3482 (instrument_drumtype_dict): dict for supported drumtypes.
3483 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3484 moments and pending mm rests
3485 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3486 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3487 (musicxml_voice_to_lily_voice): add mode change.
3488 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3489 speed and less memory usage (factor 5 to 10).
3490 (convert): write -defs.ly and driver file separately so people
3491 can script their own part extraction.
3493 * python/musicxml.py (minidom_demarshal_node): new function:
3494 separate minidom handling.
3495 (lxml_demarshal_node): new function: support lxml.etree too.
3496 (Xml_node.message): new function: verbose error message, with XML
3497 path to offending node.
3498 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3499 (Part_list.generate_id_instrument_dict): new method: collect
3500 instrument names, to be able to set drum_type.
3501 (Part.interpret): handle underfull measures
3502 (Part.interpret): assign instrument names.
3504 * python/musicexp.py (Output_printer.close): new method
3505 (MusicWrapper.print_ly): new class: support other modes,
3507 (BarCheck.print_ly): new class. Support bar checks, with comments
3508 and fancy barchecks.
3509 (NoteEvent.__init__): also set drum_type for drum notes.
3510 (MultiMeasureRest.lisp_expression): dump mm rests.
3512 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3513 line-break-permission if forbidBreak is not set.
3515 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3517 * scm/define-context-properties.scm:
3518 * scm/define-grob-properties.scm:
3519 * scm/define-grobs.scm:
3520 * scm/define-music-display-methods.scm:
3521 * scm/define-music-properties.scm:
3522 * scm/define-music-types.scm:
3523 * scm/music-functions.scm:
3524 * ly/declarations-init.ly:
3525 * lily/include/constrained-breaking.hh:
3527 * lily/spaceable-grob.cc:
3528 * lily/simple-spacer.cc:
3529 * lily/paper-score.cc:
3530 * lily/paper-column.cc:
3531 * lily/paper-column-engraver.cc:
3533 * lily/gourlay-breaking.cc:
3534 * lily/constrained-breaking.cc:
3535 * python/convertrules.py:
3536 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3537 "page-break-penalty" and "line-break-permission".
3538 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3539 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3541 * lily/bar-engraver.cc:
3542 * lily/beam-engraver.cc:
3543 * lily/forbid-break-engraver.cc:
3544 * lily/ligature-engraver.cc:
3545 * lily/paper-column-engraver.cc:
3546 * lily/percent-repeat-engraver.cc:
3547 * lily/score-engraver.cc:
3548 * lily/score-engraver.hh:
3549 * lily/paper-column-engraver.hh:
3550 Inter-engraver communication regarding line breaks is done through context
3551 properties (Score.forbidBreak) instead of function calls.
3553 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3555 * VERSION (PACKAGE_NAME): release 2.9.4
3557 2006-05-08 Graham Percival <gpermus@gmail.com>
3559 * Documentation/user/working.itely: proofreading from Dave
3562 * Doucmentation/user/README.txt: updated with manual style info.
3564 * Documentation/user/ various: trim linewidth to 78 chars.
3566 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3568 * scm/define-grob-properties.scm (all-internal-grob-properties):
3569 remove chord-tremolo property.
3571 * lily/beam.cc (get_beam_segments): don't use stem position as
3572 base for broken ends.
3574 2006-05-06 Graham Percival <gpermus@gmail.com>
3576 * Documentation/user/putting.itely: proofreading from Dave
3579 * Documentation/user/ various: more reorg and clarifications.
3581 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3583 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3585 * ly/music-functions-init.ly: new function featherDurations
3587 * lily/beam.cc: read grow-direction for feathered beaming.
3589 * Documentation/topdocs/NEWS.tely (Top): typo.
3591 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3593 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3596 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3597 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3598 used by music streams.
3600 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3601 lily/stream-event.cc, lily/stream-event-scheme.cc,
3602 lily/listener.cc, lily/scheme-listener.cc,
3603 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3604 lily/include/stream-event.hh, lily/include/listener.hh,
3605 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3606 Created data structures for music streams.
3608 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3610 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3611 construction of a beam.
3614 * flower/include/std-vector.hh (default_compare): use only one comparison.
3616 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3617 (note-by-number): further attachment fixes.
3619 * scm/lily-library.scm (ordered-cons): new function.
3620 (interval-index): new function
3622 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3624 * lily/note-head.cc (get_stem_attachment): new function.
3626 * scm/define-markup-commands.scm (note-by-number): read 'style
3629 * input/regression/markup-note.ly: show note-head style option.
3631 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3634 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3636 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3638 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3640 * lily/include/constrained-breaking.hh: GCC 4 fix.
3642 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3644 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3645 Replace it with functions get_line_forces and get_line_configuration.
3646 (class Simple_spacer): Make data private.
3647 Rewrite compression algorithm to be faster and simpler.
3649 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3650 * lily/gourlay-breaking.cc (solve):
3651 * lily/constrained_breaking.cc (space_line):
3652 Change it to the new simple-spacer code.
3654 * lily/paper-score.cc (get_paper_systems):
3657 Delay breaking the systems until they are requested.
3658 (find_break_indices):
3659 Use vsize for indices.
3661 Move the "Calculating line breaks" message here.
3663 * lily/system.cc (pre_processing):
3664 Move the "Calculating line breaks" message away from here.
3665 (break_into_pieces):
3666 Allow multiple calls to this function in sequence (with touching-but-
3667 not-overlapping breakpoints).
3669 * lily/constrained-breaking.cc:
3670 Replace most of the get_XXXX functions with get_line_details.
3671 Only calculate the force for each line. Calculate configurations only
3672 for the lines we will actually use.
3673 Replace cols_ with lines_.
3675 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3677 * mf/GNUmakefile (depth): remove FC_FIND.
3679 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3681 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3683 * scm/framework-ps.scm (write-preamble): new function.
3684 (write-preamble): load mac fonts via fondu, even if gs-font-load
3687 2006-05-03 Werner Lemberg <wl@gnu.org>
3689 * mf/GNUmakefile (FC_FIND): Fix typo.
3691 2006-05-03 Erlend Aasland <erlenda@gmail.com>
3693 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3695 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3697 * stepmake/aclocal.m4: run python-config for crosscompiling
3700 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3701 -f png for HTML, TEXINFO formats.
3703 * input/tutorial/lbook-html-test.html: new file.
3705 * lily/include/tie-formatting-problem.hh (class
3706 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3707 [column, direction]. This fixes laissez vibrer ties.
3709 * flower/include/tuple.hh (struct Tuple2): new file.
3711 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3712 $(FCMATCH), only if $(NCSB_DIR) not set.
3714 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3716 * config.make.in (DOCUMENTATION): set FCMATCH.
3718 * autogen.sh (srcdir): don't set --with-ncsb-dir.
3720 2006-05-03 Graham Percival <gpermus@gmail.com>
3722 * Documentation/user/ various: final round of reorg.
3724 * Documentation/user/instrument-notation.itely: some more
3725 fixes from Eduardo, thanks!
3727 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3729 * VERSION (PACKAGE_NAME): release 2.9.3
3731 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3733 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3735 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
3737 * scm/define-grob-properties.scm (all-user-grob-properties):
3738 Correct typo, thanks to Eduardo.
3740 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3742 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3744 * buildscripts/lilypond-words.py (F): indent fix.
3746 * input/regression/tie-arpeggio-collision.ly: new file.
3748 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3749 function: store outlines per column rank.
3751 * lily/include/tie-configuration.hh (class Tie_configuration): add
3752 column_ranks_ to specification and configuration, to distinguish
3753 between ties for different heads in arpegiated chords.
3755 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3757 * *.py: more 4 space indents.
3759 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3761 2006-05-01 Joe Neeman <joeneeman@gmail.com>
3763 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3765 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3767 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3769 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
3771 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3773 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
3775 * python/convertrules.py (conv): indent 4 for python files.
3777 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
3779 * Documentation/user/changing-defaults.itely (Creating contexts):
3780 Clarify \new semantics.
3782 2006-04-28 Graham Percival <gpermus@gmail.com>
3784 * Documentation/user/ various: major new sections in the
3785 Learning manual, slight reorg elsewhere.
3787 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3789 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
3791 * scm/framework-ps.scm (output-framework): remove PageMedia
3793 2006-04-27 Graham Percival <gpermus@gmail.com>
3795 * Documentation/user/ tweaks.itely, working.itely: new
3796 files, being more advanced "learning manual" chapters.
3798 * Documentation/user/ tutorial, putting, lilypond: reorg.
3800 2006-04-26 Graham Percival <gpermus@gmail.com>
3802 * input/regression/lyric-combine-polyphonic.ly: fixed test
3803 (no more "can't find context `one'" error).
3805 2006-04-25 Joe Neeman <joeneeman@gmail.com>
3807 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3809 * input/regression/stem-tremolo.ly: add 2 more whole note examples
3811 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
3813 * lily/relocate.cc (read_relocation_dir): new function.
3815 2006-04-26 Graham Percival <gpermus@gmail.com>
3817 * Documentation/user/instrument-notation.itely: a few more fixes
3818 from Eduardo, thanks!
3820 * Documentation/user/README.txt: new file; contains info on
3821 style that used to be in lilypond.tely.
3823 * Documentation/user/ various: first round of doc reorg.
3825 * Documentation/user/baer-flat-bw.png: remove alpha bit from
3826 graphic; this probably causes problems on some pdf
3827 viewers, notably Adobe Acrobat.
3829 2006-04-24 Graham Percival <gpermus@gmail.com>
3831 * Documentation/user/instrument-notation.itely: many alterations
3832 to Vocal music, from Eduardo Viera.
3834 2006-04-23 Graham Percival <gpermus@gmail.com>
3836 * Documentation/user/instrument-notation.itely: fix \new
3837 instead of \context problem.
3839 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
3841 * lily/relocate.cc (expand_environment_variables): new function.
3843 (read_relocation_file): id.
3845 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
3847 2006-04-21 Erlend Aasland <erlenda@gmail.com>
3849 * ly/engraver-init.ly: remove old comments from TabVoice
3851 2006-04-20 Graham Percival <gpermus@gmail.com>
3853 * Documentation/user/instrument-notation.itely: added Erlend's
3854 latest doc patch, thanks!
3856 2006-04-19 Erlend Aasland <erlenda@gmail.com>
3858 * lily/include/slur.hh:
3860 * lily/phrasing-slur-engraver.cc:
3861 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3862 acknowledge_extra_object () from Phrasing_slur_engraver:: and
3863 Slur_engraver:: and putting it in
3864 Slur::auxiliary_acknowledge_extra_object ().
3866 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3868 * lily/note-collision.cc: fix a comment
3870 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
3872 * stepmake/bin/add-html-footer.py: fix footer position in
3873 generated html files: before </body> and </html> tags.
3875 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
3877 * scripts/GNUmakefile: revert last "fix", which rather broke make.
3878 Earlier successive `make' commands finally compiled ok.
3880 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3882 2006-04-18 Erlend Aasland <erlenda@gmail.com>
3884 * lily/include/stem-tremolo.hh:
3885 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3889 * lily/include/lookup.hh: add rotated_box ()
3891 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
3893 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
3894 been generated. Fixes "can't get `--help'" bug after make clean.
3896 * THANKS: alphabetize contributors.
3898 2006-04-17 Graham Percival <gpermus@gmail.com>
3900 * Documentation/user/instrument-notation.itely: added Erlend's
3901 tabs and banjo doc patch. Thanks!
3903 2006-04-17 Erlend Aasland <erlenda@gmail.com>
3905 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3907 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3909 * scm/output-lib.scm: add some more predefined string tunings.
3911 * Documentation/user/instrument-notation.itely: and doc them.
3913 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
3915 * ly/engraver.ly: Remove obsolete comments.
3917 * ly/gregorian-init.ly: Define default layout block.
3919 * input/puer-fragment.ly: Updated and extended.
3921 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
3923 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3924 pdf conversion behaviour.
3926 * flower/file-name.cc (dir_name)
3927 (get_working_directory): Move from relocate.cc.
3929 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3931 * lily/relocate.cc: Encapsulate sys/stat.h in
3934 2006-04-14 Graham Percival <gpermus@gmail.com>
3936 * Documentation/user/ various: small updates from Cameron
3937 and Juergen, thanks!
3939 * Documentation/user/ various: small updates of my own.
3941 * THANKS: 2.7 -> 2.8.
3943 2006-04-11 Graham Percival <gpermus@gmail.com>
3945 * scm/define-context-properties.scm: typo.
3947 * Documentation/user/ : many more small updates.
3949 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
3951 * scm/define-music-types.scm: disposed "docme".
3953 2006-04-11 Erlend Aasland <erlenda@gmail.com>
3955 * lily/hairpin.cc: make niente circles a bit smaller.
3957 2006-04-10 Erlend Aasland <erlenda@gmail.com>
3959 * mf/GNUmakefile: remove redundant mftrace check. Also remove
3960 get-pfa and get-*-fonts targets.
3962 2006-04-10 Graham Percival <gpermus@gmail.com>
3964 * THANKS, Documentation/user/ basic-notation, advanced-notation,
3965 music-glossary, programming-interface: more minor fixes
3968 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3970 * scm/define-context-properties.scm: another old \property update.
3971 This time tested for compiling!
3973 2006-04-10 Erlend Aasland <erlenda@gmail.com>
3975 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3977 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
3979 * scm/define-context-properties.scm (all-user-translation-properties):
3980 * Documentation/user/global.itely (Page formatting): Compile fix.
3982 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
3984 * Documentation/user/advanced-notation.itely (Polymetric
3985 notation): Update the example to use the "+" symbol and add link
3986 to input/test/compound-time.ly.
3988 2006-04-08 Graham Percival <gpermus@gmail.com>
3990 * scm/define-grob-properties.scm: clarify docs for #'direction.
3992 * scm/define-context-properties.scm: update old \property override.
3994 * Documentation/user/ advanced-notation, global, lilypond-book:
3995 more minor doc updates.
3997 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3999 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4001 * scm/backend-library.scm (search-gs): oops.
4003 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4005 * scripts/lilypond-book.py (output): use base, not filename for href.
4007 * scm/backend-library.scm: only look for gs.
4009 * scripts/lilypond-book.py (output): fix printfilename.
4011 * lily/parser.yy (music_function_musicless_prefix): fold together
4012 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4014 * lily/slur.cc (print): only set font-size if not set yet.
4016 * lily/slur-configuration.cc (add_score): improved layout of debug
4019 2006-04-05 David Feuer <David.Feuer@gmail.com>
4021 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4022 (draw_circle): Hopefully fixed regression.
4023 Improved documentation for several procedures.
4025 2006-03-04 Werner Lemberg <wl@gnu.org>
4027 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4029 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4031 * scripts/musicxml2ly.py (bindir): add dynamic
4034 2006-04-04 Graham Percival <gpermus@gmail.com>
4036 * Documentation/user/ basic-notation, advanced-notation, putting,
4037 instrument-notation, invoking, lilypond, THANKS: another ream of small
4038 fixes from the Doc Helpers.
4040 2006-04-03 David Feuer <David.Feuer@gmail.com>
4042 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4044 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4046 * Cleaned up interfaces between PostScript and Scheme, and moved
4047 computations from PostScript to Scheme:
4049 * music-drawing-routines.ps
4050 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4051 with stroke_and_fill throughout.
4052 (euclidean_length, print_letter, draw_box): Deleted unused
4053 procedures. If someone needs draw_box, implement it using
4054 draw_round_box; don't duplicate code.
4055 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4056 Refactored/cleaned up interfaces.
4059 * output-ps.scm: reordered arguments to PostScript functions to
4060 match new interfaces
4061 (glyph-string): Rewrote glyph-string.
4062 (grob-cause): Replaced string-append with format.
4063 (repeat-slash): Rewrote to do computation here.
4064 (round-filled-box): Rewrote to do computation here.
4066 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4068 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4070 * stepmake/stepmake/toplevel- targets.make: print help info about
4073 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4075 * input/regression/hairpin-circled.ly: new file
4077 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4079 * lily/hairpin.cc (print): add support for circled tip
4081 * scm/define-grob-properties.scm: add circled-tip parameter
4083 * scm/define-grobs.scm: init circled-tip to false
4085 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4087 * scm/music-functions.scm (quote-substitute): set
4090 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4092 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4095 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4097 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4099 2006-03-31 David Feuer <david.feuer@gmail.com>
4101 * scm/framework-ps.scm:
4103 * scm/output-ps.scm: glyph-string now produces smaller, more
4104 readable, and probably faster PostScript. Several findfont
4105 scalefont setfont instances changed to selectfont
4106 Hacked-up string-appends changed to formats.
4108 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4110 2006-03-30 Graham Percival <gpermus@gmail.com>
4112 * scm/lily-library.scm: make "no version" warning message more polite.
4114 * lily/music.cc: add double quotes to failed octave check.
4116 * Documentation/user/ advanced-notation, changing-defaults,
4117 instrument-notation, invoking, music-glossary: whole bunch of minor
4120 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4122 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4123 $(buildscriptdir) iso. depth.
4125 * VERSION (PACKAGE_NAME): release 2.9.1
4127 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4129 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4131 * VERSION (PATCH_LEVEL): bump version number.
4133 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4136 * lily/pango-font.cc (pango_item_string_stencil): use
4139 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4140 $(outdir)/emmentaler-%.svg): remove canary.
4142 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4143 glyphnames if we have a ttf font.
4145 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4147 * Documentation/user/advanced-notation.itely (Font selection):
4148 Corrected reference to the font-family-override.ly example.
4150 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4152 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4153 stem-tremolo object in the stem (or else the stem might not be
4156 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4158 * lily/ttf.cc (print_trailer): only print existing glyphs.
4160 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4162 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4163 position the tremolo based on the position of the notehead.
4165 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4166 notes and update the texidoc line with the new positioning rules.
4168 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4170 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4172 * scripts/lilypond-book.py (Module): set default for linewidth if
4175 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4177 * VERSION (PACKAGE_NAME): release 2.9.0.
4179 * input/regression/stem-tremolo-position.ly: new file.
4181 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4183 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4185 * lily/stem-tremolo.cc (print): position
4186 the tremolo depending only on the end of the stem
4187 and not on the notehead
4188 (raw_stencil): center, on the middle staff line, the
4189 flag that is closest to the end of the stem (previously
4191 (calc_width): add this callback to shorten a tremolo when
4192 it is beamed or it is stemup with a flag
4193 (style): add this callback to make a tremolo rectangular when
4194 it is beamed or it is stemup with a flag
4195 (rotated_box): this is like Lookup::beam but makes a rotated
4196 rectangle instead of a parallelogram
4198 * lily/stem.cc (calc_stem_info): make sure the stem
4199 is long enough to fit the tremolo
4200 (calc-length): reduce the length of tremolo stems since the
4201 tremolo code is now capable of better positioning
4203 * scm/define-grobs.scm: make calc_width the default beam-width
4204 callback for stem-tremolo and add the style callback
4206 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4208 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4211 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4213 * lily/ttf.cc (make_index_to_charcode_map): restore old
4216 2006-03-28 Werner Lemberg <wl@gnu.org>
4218 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4220 2006-03-28 Graham Percival <gpermus@gmail.com>
4222 * THANKS: update for 2.9, add section for Documentation helpers.
4224 * Documentation/topdocs/NEWS.tely: compile fix.
4226 * Documentation/user/ basic-notation, global, advanced-notation,
4227 examples.itely: minor fixes from mailist.
4229 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4231 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4234 * lily/ttf.cc (print_trailer): use it.
4236 * lily/pango-font.cc (get_unicode_name): new function.
4238 * lily/ttf.cc (make_index_to_charcode_map): move function from
4240 (print_trailer): substitute uniXXXX name if applicable.
4242 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4243 (pango_item_string_stencil): use it to generate uniXXXX names.
4245 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4246 note heads, for uniform widths in shape note output.
4247 (overdone_heads): hmm. remove them again.
4249 * scripts/lilypond-book.py (output): add links to filenames.
4251 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4253 * lily/note-collision.cc (get_clash_groups): only consider when
4254 Note_column::dir <> CENTER.
4256 * scripts/lilypond-book.py (get_option_parser): init output_name
4259 2006-03-24 Graham Percival <gpermus@gmail.com>
4261 * Documentation/topdocs/NEWS.tely: add @end itemize
4263 * Documentation/user/ global, advanced-notation: minor
4266 2006-03-23 Graham Percival <gpermus@gmail.com>
4268 * Documentation/user/ lilypond.tely, music-glossary,
4269 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4271 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4273 * mf/GNUmakefile: don't install .enc files.
4275 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4277 * VERSION (PATCH_LEVEL): bump to 2.9.0
4279 2006-03-22 Graham Percival <gpermus@gmail.com>
4281 * Documentation/user/advanced-notation.itely: minor fixes
4284 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4286 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4288 * branch lilypond_2_8
4290 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4292 * scripts/lilypond-book.py (samefile): new function, for windoze
4295 2006-03-21 Graham Percival <gpermus@gmail.com>
4297 * ly/engraver-init.ly: add info about StaffGroup.
4299 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4301 * input/regression/stem-direction-context.ly: idem.
4303 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4307 * input/regression/page-layout-twopass.ly: comment out \markup so
4310 * lily/instrument-name-engraver.cc (finalize): add to instrument
4311 name global System. This also fixes chopped instrument names, but
4312 doesn't crash when there are slurs/beams.
4314 * lily/slur-configuration.cc (add_score): disallow negative slur
4317 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4319 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4321 * lily/instrument-name-engraver.cc (process_music): kludge: add
4322 InstrumentName spanner to axis group of left bound. Fixes chopped
4323 off instrument names in EPS images.
4325 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4327 * scripts/abc2ly.py (option_parser): update to 2.7.40
4329 2006-03-20 Graham Percival <gpermus@gmail.com>
4331 * THANKS: move small doc contributors to SUGGESTIONS.
4333 * Documentation/user/ basic-notation, advanced-notation,
4334 global: small changes from mailist.
4336 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4338 * Documentation/user/advanced-notation.itely (Text marks): update
4339 for new rehearsalMarkAlignSymbol convention.
4341 * VERSION (PATCH_LEVEL): bump version.
4343 * input/test/instrument-name-align.ly: new file.
4345 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4347 * input/test/instrument-name-align.ly: new file. Document how to
4348 align instrument names.
4350 * lily/mark-engraver.cc: remove properties.
4352 * scm/define-context-properties.scm
4353 (all-user-translation-properties): remove align symbol properties
4354 for barnumber/reh. mark.
4356 * lily/break-align-interface.cc (self_align_callback): new
4357 interface, new function. Look at complete alignment. This handles
4358 tunable break alignments in case break-align-symbols are missing.
4360 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4362 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4364 * python/convertrules.py (conv): mark/bar number alignment rule.
4366 * lily/break-align-interface.cc (calc_positioning_done): also
4367 store offset from last visible break-alignment to its
4368 neighbor. This makes alignment on non-visible objects more reliable.
4370 * po/lilypond.pot (Module): ran po-replace.
4372 * input/regression/tie-single-manual.ly (Module): new file.
4374 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4375 look at has_manual_position_.
4376 (from_ties): set has_manual_position_ if tie has staff-position set.
4378 * lily/tuplet-bracket.cc (calc_positions): idem.
4380 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4383 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4385 * scm/define-markup-commands.scm (smallCaps): new markup command
4386 for turning a text to small caps using smaller font size and upper
4389 2006-03-17 Graham Percival <gpermus@gmail.com>
4391 * Documentation/user/ examples, instrument-notation,
4392 advnaced-notation: minor fixes from mailist.
4394 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4396 * Documentation/user/tutorial.itely (First steps): change example
4399 2006-03-17 Graham Percival <gpermus@gmail.com>
4401 * Documentation/user/ examples, advanced: minor changes from mailist.
4403 * THANKS: add Geoff Horton, for documentation stuff.
4405 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4407 * python/lilylib.py (system): revert have_select kludge.
4409 * Documentation/user/tutorial.itely (Commenting input files):
4410 update version numbers in doc.
4412 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4413 bound-padding to multi-measure-interface
4415 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4417 * input/test/engraver-example.ily: update version number.
4419 * VERSION (PACKAGE_NAME): release 2.7.39
4421 * lily/note-spacing.cc (get_spacing): heighten threshold where
4422 accidentals/arpeggios influence previous spacing fully.
4424 * lily/rest.cc (y_offset_callback): only use direction if
4425 staff-position wasn't set before.
4427 * lily/bar-number-engraver.cc: add support for
4428 barNumberAlignSymbol.
4429 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4431 * lily/pointer-group-interface.cc (set_ordered): new function.
4432 (add_unordered_grob): new function.
4434 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4435 to ordered, unless the opposite has been proved. This fixes
4436 random reordering of large object groups across linebreaks,
4439 * lily/main.cc (do_chroot_jail): printf format fix.
4441 * lily/tie-formatting-problem.cc (generate_configuration):
4442 multiply y-shift for dot with direction.
4444 * scm/define-markup-commands.scm (note-by-number): put (magstep
4445 size) in y-attach too.
4447 * Documentation/topdocs/NEWS.tely (Top): show override.
4449 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4450 direction for stems.
4452 2006-03-15 Graham Percival <gpermus@gmail.com>
4454 * Documentation/user/ changing-defaults, global: minor
4457 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4459 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4461 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4462 breakable items after uniformly stretched notes.
4464 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4465 outline with outer edge of note heads. This prevents infinity
4466 problems with tied whole notes.
4468 * scripts/lilypond-book.py (do_file): use os.popen
4470 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4472 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4474 * Documentation/user/invoking.itely: Add ragged-right to bug report
4477 2006-03-14 Graham Percival <gpermus@gmail.com>
4479 * Documentation/user/global.itely: small fix from mailist.
4481 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4483 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4484 file descriptor returned by tempfile.mkstemp() when writing
4485 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4488 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4490 * po/fi.po: newline bugfix.
4492 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4494 * scm/paper.scm (paper-alist): Rounding fixes.
4496 2006-03-13 Graham Percival <gpermus@gmail.com>
4498 * Documentation/user/ changing-defaults, instrument-notation,
4499 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4501 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4505 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4507 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4510 * python/lilylib.py (print_environment): move ps_page_count to
4513 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4515 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4517 * scm/framework-ps.scm (embed-document): new function. Use to
4520 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4522 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4524 * Documentation/user/instrument-notation.itely (Setting simple
4525 songs): Added \book{...} around the full example, so the separate
4526 markups are included in the printed example.
4528 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4530 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4533 * python/lilylib.py (system): rewrite system() using
4534 subprocess. Remove >& redirection trickery.
4536 2006-03-11 Graham Percival <gpermus@gmail.com>
4538 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4539 notation-appendices.itely: minor fixes from mailist.
4541 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4543 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4544 unsplit man also needs images.
4546 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4548 * VERSION (PACKAGE_NAME): 2.7.38 released.
4550 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4552 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4555 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4557 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4558 respects the Score.skipTypesetting property.
4560 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4562 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4563 Prolog. No %%EOF after CFF file.
4565 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4567 * lily/constrained-breaking.cc (get_max_systems): used to return a
4569 (combine_demerits): use pointers to reduce copying data
4570 (calc_subproblem): idem
4571 (get_page_penalty): add page turn penalties
4573 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4575 * Documentation/user/invoking.itely (Invoking lilypond): better
4576 explanation of -e usage.
4578 * lily/main.cc (main_with_guile): don't append to
4579 init_scheme_code_string
4581 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4583 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4585 * scripts/convert-ly.py (do_options): don't print help for
4588 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4589 @code and @example. Update from texinfo.tex from CVS.
4591 2006-03-08 Graham Percival <gpermus@gmail.com>
4593 * Documentation/user/scheme-tutorial.itely: clarifies distances
4594 measured in staff-spaces.
4596 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4598 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4599 consider[k] is true.
4601 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4603 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4604 consider columns that have originals. Unifies spacing for mm
4605 rests around line breaks.
4607 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4608 (set_text_rods): idem.
4609 (calculate_spacing_rods): new function: share code between
4610 set_text_rods and set_spacing_rods.
4611 (set_text_rods): take extents of bounds into account.
4613 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4615 * Documentation/user/basic-notation.itely (Writing music in
4616 parallel): don't use relative.
4618 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4620 * ly/music-functions-init.ly (Module): add shiftDurations
4622 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4624 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4626 * ly/engraver-init.ly: init vocalName to nil.
4628 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4630 * scm/music-functions.scm (music->make-music): bugfix,
4631 KeyChangeEvents are now handled correctly.
4633 * scripts/lilypond-book.py: Add --debug option.
4635 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4637 * python/lilylib.py: add tempfile.
4639 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4641 * VERSION (PACKAGE_NAME): release 2.7.37
4643 * python/lilylib.py (ps_page_count): remove make_ps_images().
4644 (ps_page_count): remove mkdir_p
4645 (system): remove cleanup_temp.
4646 (exit): remove lilypond_version_(check)
4647 (error_log): remove pseudo_filter_p
4652 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4655 * lily/accidental-engraver.cc (make_standard_accidental): only add
4656 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4658 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4659 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4660 Make incompatibilities.
4662 * scm/output-ps.scm (grob-cause): replace backslashes by /
4663 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4665 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4667 * cygwin/GNUmakefile: Install fixes.
4669 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4671 * lily/note-head.cc (head::get_balltype): Compile fix.
4673 * flower/file-name.cc (dos_to_posix): Flower string fix.
4675 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4677 * python/lilylib.py: pychecker cleanups.
4679 * scripts/lilypond-book.py
4680 (Lilypond_snippet.output_print_filename): pychecker cleanups
4682 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4684 * python/lilylib.py (underscore): remove identify() , warranty()
4686 * ps/music-drawing-routines.ps: change Border routine for GSView
4689 * lily/stem.cc (height): use quantize-positions. This triggers
4690 set_stem_lengths, so scripts on beamed stems are handled correctly.
4692 * lily/side-position-interface.cc (aligned_side): check if edges
4693 of script are inside staff. Fixes accent of edge of the staff.
4695 * input/regression/staccato-pos.ly: more examples.
4697 * stepmake/aclocal.m4 (depth): fix bashism.
4699 * lily/lyric-combine-music-iterator.cc: move from
4700 new-lyric-combine-iterator.cc
4701 (process): add pending_grace_lyric_ member to delay lyrics on
4704 * lily/system-start-text.cc (print): suicide if we don't have any
4705 elements. Fixes hara kiri'd instrument names.
4707 * scripts/mup2ly.py (Module): remove.
4709 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4711 * Documentation/user/global.itely (A single music expression):
4712 close @lilypond properly
4714 * lily/volta-bracket.cc (modify_edge_height): change from
4715 after_line_breaking_callback. Suicide last bracket if appropriate.
4717 * python/lilylib.py: strip getopt support
4719 * scripts/etf2ly.py (do_options): use optparse
4721 * scripts/midi2ly.py: optparse, strip lilylib copy.
4723 * scripts/abc2ly.py (voices): use optparse.
4725 * stepmake/stepmake/generic-vars.make: new function absdir.
4727 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4729 * scripts/lilypond-book.py (find_file): use global_options for
4732 * scm/ps-to-png.scm (ps-page-count): prevent null characters
4735 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4737 * python/lilylib.py (get_global_option): ughness for extracting
4738 global options from lilylib.
4739 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4741 * scripts/lilypond-book.py (get_option_parser): use optparse for
4742 option handling. Put options in global_options variable.
4744 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
4746 * Documentation/index.html.in: clarify.
4748 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
4750 * scm/layout-page-layout.scm (write-page-breaks): add a
4751 music-system-heights property to the page layout output.
4753 * scm/page.scm (make-page-stencil): take footer into account when
4754 computing the 'space-left page property
4755 (annotate-space-left): take footer into account when annonating
4758 2006-02-28 Graham Percival <gpermus@gmail.com>
4760 * Documentation/user/ advanced-notation, global: more (final)
4761 docs for music expressions, removed special fermatas.
4763 2006-02-27 Graham Percival <gpermus@gmail.com>
4765 * Documentation/user/ basic-notation, global: minor changes
4768 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
4770 * scm/framework-ps.scm:
4771 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4772 layer for inf? and nan? from framework-ps to lily-library.
4774 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
4776 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4777 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4779 * buildscripts/substitute-encoding.py (Module): remove file.
4781 * mf/GNUmakefile: more PFA strippage.
4783 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4785 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4788 * scm/framework-ps.scm: remove font name munging.
4790 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4792 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
4794 * scm/markup.scm (define-markup-command): change
4795 def-markup-command to define-markup-command
4797 * scm/music-functions.scm (define-music-function): change
4798 def-music-function to define-music-function.
4800 * python/convertrules.py (conv): rules for def-music-function
4801 and def-markup-commands
4803 * Documentation/user/programming-interface.itely,
4804 input/no-notation/display-lily-tests.ly,
4805 input/regression/lily-in-scheme.ly,
4806 input/regression/markup-user.ly,
4807 input/regression/music-function.ly, input/regression/tie-chord.ly,
4808 scm/fret-diagrams.scm, ly/music-functions-init.ly,
4809 ly/gregorian-init.ly: use new macro names (define-music-function,
4810 define-markup-command).
4812 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
4814 * scripts/lilypond-book.py (main): write Makefile dependencies file.
4815 (output): add comments to lp-book latex output.
4817 * GNUmakefile.in (footifymail): use gmane address for webpage bug
4820 2006-02-23 Graham Percival <gpermus@gmail.com>
4822 * Documentation/user/ tutorial, global: minor changes.
4824 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
4826 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4827 blocks (for make 3.80)
4829 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4830 \notemode so that user should not have to explicitely type it.
4832 * scm/define-music-display-methods.scm: various
4833 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4836 * input/no-notation/display-lily-tests.ly: new tests for
4837 \applyOutput and \applyContext
4839 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
4841 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4842 changed it slightly so that the number of systems returned by
4843 solve () will be the same as the last value passed to resize
4844 (). I've also added more documentation, removed casts, fixed style
4845 problems and put in some recovery if constraints aren't satisfied."
4847 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
4849 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4850 for emacs < 22 compatibility.
4851 (count-rexp): Use it.
4852 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4853 substring juggling (Milan Zamazal).
4855 2006-02-23 Graham Percival <gpermus@gmail.com>
4857 * Documentation/user/ basic-notation, advanced-notation,
4858 global.itely, invoking.itely, tutorial,itely:
4859 minor fixes from mailist.
4861 * scm/define-markup-commands.scm: improve docs of \filled-box.
4863 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
4865 * Documentation/index.html.in: changes concern the previous release.
4867 * input/regression/+.ly: cultivate typographical terminology.
4869 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4871 * scm/define-grob-interfaces.scm (parentheses-interface): add
4872 padding to parentheses-interface.
4874 * Documentation/user/GNUmakefile: remove $(CROSS) support from
4875 Documentation/user/GNUmakefile. Use --disable-documentation for that.
4877 * VERSION (PATCH_LEVEL): release 2.7.36
4879 * lily/slur.cc: add avoid-slur (ugh.)
4881 * lily/slur-configuration.cc (fit_factor): oops, skip point if
4882 intersection gets smaller. This fixes slurs over extreme points.
4884 * lily/melody-engraver.cc (stop_translation_timestep): ignore
4885 stems with neutral-direction set.
4887 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4889 * lily/open-type-font.cc (load_table): format error.
4891 * lily/change-iterator.cc (process): format fix.
4893 * flower/include/international.hh (_f): idem.
4895 * flower/include/std-string.hh: add format printf attribute.
4897 * scm/define-grobs.scm (all-grob-descriptions): height of all
4898 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4900 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4903 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4905 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
4907 * input/regression/: upgraded syntax for some files.
4909 * THANKS: Add bughunters.
4911 2006-02-22 Graham Percival <gpermus@gmail.com>
4913 * Documentation/user/ invoking.itely, advanced-notation.itely,
4914 global.itely: long-awaited "let's make chapter 10 not suck"
4915 update. Rearrange chapter 10; now called "global issues",
4916 addresses file structure, etc. Some info from other files
4917 moved into global.itely.
4919 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4921 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4922 catch trill-span-event notes.
4924 * Documentation/user/examples.itely (Ancient notation templates): typo.
4927 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
4929 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4931 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4933 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4935 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4936 froum Laissez_vibrer_engraver.
4938 * ly/declarations-init.ly (repeatTie): add \repeatTie
4940 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4942 * scm/define-grob-properties.scm (all-user-grob-properties): add
4943 head-direction property.
4945 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4946 from_lv_ties. Take head direction argument.
4948 * lily/semi-tie-column.cc: rename from
4949 laissez-vibrer-tie-column.cc. Rename class too.
4951 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4954 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4956 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4958 (find_breaks): idem.
4960 2006-02-21 Graham Percival <gpermus@gmail.com>
4962 * Documentation/user/advanced-notation.itely: fixed make-moment]
4965 * Documentation/user/basic-notation.itely: more clarification to
4968 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4970 * lily/include/constrained-breaking.hh (class
4971 Constrained_breaking): new file.
4973 * lily/constrained-breaking.cc (resize): new file.
4975 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4977 * Documentation/user/advanced-notation.itely (Clusters): insert
4980 * lily/tie-column.cc (calc_positioning_done): support for
4983 * lily/tie-formatting-problem.cc
4984 (generate_extremal_tie_variations): factor out.
4985 (score_ties_configuration): annotate all tie
4986 (print_ties_configuration): new routine.
4987 (generate_configuration): nudge extremal ties outside of the head
4989 (score_ties_configuration): oops. convert to staff-space before
4990 determining position symmetry.
4992 2006-02-20 Graham Percival <gpermus@gmail.com>
4994 * Documentation/user/*-notation.itely: misc minor editing,
4995 shifting doc sections around.
4997 * Documentation/user/*-notation-itely, global.itely,
4998 changing-defaults.itely: added new stuff from NEWS.
5000 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5004 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5006 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5007 lilypond --verbose for lp-book.
5009 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5010 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5012 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5013 $(buildscript-dir) iso. absolute depth.
5015 * buildscripts/genicon.py (dir): thinko.
5017 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5019 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5021 * scm/output-lib.scm: swap darkcyan/darkyellow
5023 * THANKS: Add bughunters.
5025 2006-02-19 Graham Percival <gpermus@gmail.com>
5027 * Documentation/user/programming-interfaces.itely: fixed example.
5029 * Documentation/user/instrument-notation.itely: fix @{ @}.
5031 * scm/script.scm: add avoid-slur for \open.
5033 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5035 * lily/tie-formatting-problem.cc (score_configuration): use
5036 sliding score for min-length.
5038 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5039 spaghetti for icons.
5041 * buildscripts/genicon.py (program_name): new file.
5043 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5045 (generate_configuration): for small ties, also look for collisions
5046 at Y + DIR*h + DELTA_Y.
5047 (get_variations): consider variation for dot positions too.
5049 * lily/side-position-interface.cc (aligned_side): take abs for
5050 quantized rounded position. Fixes tenuto below staff.
5052 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5053 markers when necessary.
5055 * lily/program-option.cc (internal_set_option): add
5056 strict_infinity_checking option.
5058 * scm/output-lib.scm (cyan): swap yellow and cyan.
5060 2006-02-19 Graham Percival <gpermus@gmail.com>
5062 * darwin.patch: trivial linenumber update.
5064 * Documentation/user/ {various}: `\context foo = named' changed
5065 to `\new foo = "name"' in docs.
5067 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5069 * scm/stencil.scm (annotate-y-interval): use it.
5071 * scm/lily-library.scm (interval-sane?): new function.
5073 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5076 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5079 * flower/include/std-vector.hh (iterof): add iterof macro.
5081 * lily/enclosing-bracket.cc (width): new function.
5083 * lily/align-interface.cc (align_elements_to_extents): reinstate
5086 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5088 * Documentation/index.html.in: fix spelling: thankyous.
5090 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5092 * lily/lyric-hyphen.cc: typo.
5094 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5096 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5097 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5100 * VERSION: release 2.7.35
5102 * lily/beam.cc (get_default_dir): oops. Take abs () for
5104 (get_default_dir): use extreme position criterion only in absence
5105 of forced stem directions.
5107 * VERSION (PATCH_LEVEL): bump VERSION.
5109 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5110 dependencies. Necessary for -jX builds.
5112 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5114 * lily/relocate.cc (setup_paths): Yet another const fix.
5116 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5118 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5120 * lily/relocate.cc (setup_paths): oops.
5122 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5124 * Documentation/index.html.in: order links: html before PDF.
5126 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5128 * lily/tie-column-format.cc (Module): remove.
5130 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5132 * lily/text-spanner.cc (print): idem.
5134 * lily/dynamic-text-spanner.cc (print): only print line if longer
5137 * lily/auto-change-iterator.cc (change_to): formatting.
5139 * lily/beam.cc (get_default_dir): take extreme note head as input
5142 * lily/tie.cc (get_default_dir): only look directions for visible
5145 * lily/side-position-interface.cc (aligned_side): oops. Don't
5146 mutiply with direction. This fixes quantized (staccato, tenuto)
5147 scripts below notes.
5149 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5150 direction. Fixes c-lyrics-center-align.ly
5152 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5154 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5157 * lily/std-string.cc:
5158 * lily/include/std-vector.hh (split_string): Move and rename from
5159 lily/include/misc.hh, lily/misc.cc. Update callers.
5161 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5163 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5165 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5167 * flower/test-file.cc: New file.
5169 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5172 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5174 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5176 * flower/include/file-storage.hh: remove file.
5178 * lily/include/midi-item.hh (class Midi_track): idem.
5180 * lily/include/source.hh (class Sources): idem.
5182 * lily/include/performance.hh (class Performance): use vector
5185 * flower/include/cons.hh (class Cons): remove file.
5187 * flower/include/flower-proto.hh: remove template cruft.
5189 * lily/include/font-metric.hh: use size_t not vsize for indices.
5191 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5194 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5196 * lily/include/paper-book.hh (class Paper_book):
5197 make get_system_specs() public.
5199 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5200 the force=10000 case if we don't have a current-best.
5202 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5205 * flower/include/flower-proto.hh: remove outdated templates.
5207 * scm/page.scm: use annotate-spacing
5209 2006-02-15 Graham Percival <gpermus@gmail.com>
5211 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5213 * THANKS: moved Erlend Aasland to contributors.
5215 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5217 * config.hh.in: remove HAVE_PANGO_16
5219 * lily/tuplet-bracket.cc (calc_positions): multiply with
5220 staff-space for beam case. This fixes tuplets+beams on scaled
5223 * config.hh.in: remove all Kpathsea related defines.
5225 * lily/dot-column.cc (side_position): reach stem via dots->
5226 head->stem. Inspect all stems for dot collisions.
5228 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5231 * lily/bar-number-engraver.cc (process_music): document function
5234 * lily/score.cc (default_rendering): add pscore, not systems
5237 * lily/paper-book.cc (get_system_specs): separate generation of
5240 * flower/include/std-vector.hh: don't include config.hh
5242 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5244 * flower/include/std-vector.hh: Better wrapper compatibility with
5247 * flower/include/flower-proto.hh: Remove cheap forward declaration
5250 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5252 2006-02-14 Graham Percival <gpermus@gmail.com>
5254 * Documentation/user/invoking.itely: add warning about command line.
5256 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5258 * lily/include/lily-proto.hh: add Prob, rm Page.
5260 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5262 * VERSION: release 2.7.34
5264 * lily/relocate.cc (framework_relocation): show canary if
5265 GHOSTSCRIPT_VERSION undefined.
5267 * GNUmakefile.in: remove $(VERSION) symlink.
5269 * lily/relocate.cc (setup_paths): add +
5271 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5273 * Documentation/index.html.in: specify sizes for all big HTML pages.
5275 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5277 * config.hh.in: remove @FRAMEWORKDIR@
5279 * lily/system-start-text.cc (get_stencil): new file: separate out
5280 system-start-delimiter text support.
5282 * input/**ly: replace \context with \new where appropriate.
5286 * lily/slur-scoring.cc (get_base_attachments): use
5287 robust_relative_extent. This fixes problems with empty paper-columns.
5289 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5291 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5293 * scm/define-music-properties.scm (all-music-properties):
5294 create-new property.
5296 * lily/context-specced-music-iterator.cc (construct_children):
5297 inspect 'create-new property iso. magical $uniqueContextId context
5300 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5302 * lily/context-key-manager.cc (Module): new file. Encapsulate
5303 object key generation.
5305 * lily/include/context-key-manager.hh (Module): new file.
5307 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5309 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5312 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5314 (reloc_b): excise --enable-framework-dir
5316 * lily/relocate.cc (framework_relocation): use getenv
5317 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5319 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5321 * flower/include/std-string.hh:
5322 * flower/include/std-vector.hh: Finish std:: conversion; move
5323 flower extensions from std:: namespace. Update users.
5325 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5326 their expansion to vector<*>. Update users.
5328 2006-02-10 Graham Percival <gpermus@gmail.com>
5330 * Documentation/user/invoking.itely: add example to File structure.
5332 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5333 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5335 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5337 * ly/paper-defaults.ly: typo.
5339 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5340 set_parent() for parentheses. This will make it show up in bbox
5343 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5344 ly:grob-common* functions.
5346 * lily/grob-scheme.cc (LY_DEFINE):
5347 ly:grob-common-refpoint-of-array: new function
5348 ly:grob-common-refpoint: new function
5349 ly:grob-relative-coordinate: new function
5351 * lily/instrument-name-engraver.cc (process_music): use
5352 Text_interface::is_markup(). This fixes \markup on instrument names.
5354 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5357 * lily/slur.cc (print): idem.
5359 * lily/tie.cc: add line-thickness for ties.
5361 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5363 * scm/output-svg.scm: Document diversion from GNU coding standards
5364 as a workaround for a bug in Microsoft Internet Explorer.
5366 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5368 * lily/instrument-name-engraver.cc (process_music): use
5369 is_markup() iso. is_string()
5371 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5373 * lily/percent-repeat-engraver.cc (process_music): only look at
5374 main_part_ for % repeats.
5376 * lily/stem-tremolo.cc (get_beam_translation): new function.
5377 (calc_slope): new function.
5378 (height): don't use real slope.
5380 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5382 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5383 new connect-to-neighbor, control-points and staff-padding
5384 properties to make ligature brackets showing up again.
5386 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5388 * VERSION: release 2.7.33
5390 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5393 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5394 remove applyOutput example.
5395 (Objects connected to the input): document \tweak, \parenthesize
5397 * lily/relocate.cc (prefix_relocation): allow "current"
5398 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5399 changing VERSION in a lily tree less painful.
5401 * input/regression/parenthesize.ly: new file.
5403 * scm/output-lib.scm (parenthesize-element): new function.
5405 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5407 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5409 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5410 cause: accidentals are caused by note heads, not note events.
5412 2006-02-08 Graham Percival <gpermus@gmail.com>
5414 * darwin.patch: small patch from Erlend, thanks!
5416 * Documentation/user/basic-notation.itely: add stem-neutral example.
5418 * Documentation/user/putting.itely: clarifications.
5420 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5422 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5423 note, add more guidelines to what should go into NEWS.
5425 * input/sakura-sakura.ly: document how to override font.
5427 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5429 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5431 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5433 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5435 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5436 convertrules. Add explicit grouping, needed for python2.2.
5438 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5440 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5442 2006-02-07 Graham Percival <gpermus@gmail.com>
5444 * Documentation/user/global.itely: fix line-width in (text) docs.
5446 * Documentation/user/lilypond-book.itely: same.
5448 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5450 * VERSION (PACKAGE_NAME): release 2.7.32
5452 * Documentation/topdocs/NEWS.tely (Top): document new variable
5455 * flower/include/array.icc (Message): remove file.
5457 * flower/include/std-vector.hh: make sure vsize and VPOS are
5458 defined for binary_search_bounds().
5460 * flower/std-string.cc (std): add to_string(long unsigned).
5462 * configure.in (gui_b): excise std_string option.
5463 (gui_b): excise std_vector option.
5465 * flower/string.cc (Module): excise flower array & string
5467 * flower/include/std-string.hh: excise flower string.
5469 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5471 * python/convertrules.py (lilypond_version_re_str): require
5472 only numbers and dots in \version string.
5474 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5476 * lily/system-start-delimiter.cc (print): allow style = text too.
5478 * lily/system-start-delimiter-engraver.cc
5479 (acknowledge_system_start_text): new function, also add add to
5480 support of system-start-text (instrument names). This fixes
5481 instrument names on piano staves.
5483 * lily/instrument-name-engraver.cc: rewrite. Use
5484 system-start-delimiter approach. This save memory and cpu.
5486 * scm/define-grobs.scm (all-grob-descriptions): remove
5487 instrument-name from break-alignment.
5489 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5491 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5493 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5496 * configure.in (std_vector): On by default.
5498 * lily/include/font-metric.hh:
5499 * lily/include/tfm-reader.hh:
5500 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5503 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5505 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5507 * VERSION (PACKAGE_NAME): 2.7.31
5509 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5510 EPS edge at 0, but take minimum with left-overshoot. This fixes
5511 cut off system start delims.
5513 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5514 hack: add to axis group if not added yet. This fixes hara kiri'd
5517 * lily/hara-kiri-group-spanner.cc
5518 (force_hara_kiri_in_y_parent_callback): fix signatures.
5520 * lily/hairpin.cc (print): check next hairpin to see whether or
5521 not to be continuing.
5523 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5525 * Remove trailing whitespace from makefiles.
5527 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5530 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5532 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5534 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5536 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5538 * configure.in: Use it.
5540 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5542 * scm/music-functions.scm (pitch-of-note): new function.
5544 * ly/music-functions-init.ly: add \octave and \addquote
5546 * lily/parser.yy (music_function_chord_body): softcode \octave.
5547 (lilypond_header): softcode \addquote
5549 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5551 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5552 array.hh, parray.hh at all. Getting ready to flip the
5555 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5557 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5560 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5562 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5564 * flower/include/array.hh: typo.
5566 2006-02-02 Graham Percival <gpermus@gmail.com>
5568 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5570 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5572 * flower/include/pqueue.hh: Derive from std::vector.
5574 * flower/include/parray.hh: Conform to std::vector interface.
5577 2006-02-02 Graham Percival <gpermus@gmail.com>
5579 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5581 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5583 * flower/file-path.cc (is_file): remove if 0 section.
5585 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5586 selecting afii61352.
5588 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5590 * flower/include/std-vector.hh (boundary): Oops, reverse.
5592 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5593 remove superfluous `d'.
5595 * flower/include/std-vector.hh (boundary, top): Detach from class.
5596 Remove empty vector shell.
5598 * flower/include/array.hh (reverse, swap): Detach from class.
5601 * flower/include/std-vector.hh
5602 * flower/include/array.hh (concat): Globally change to insert ().
5605 * flower/include/std-vector.hh
5606 * flower/include/parray.hh
5607 * flower/include/array.hh (elem, elem_ref): Globally replace by
5610 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5612 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5614 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5615 anticipate on identifier substitutions.
5617 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5619 * flower/include/std-vector.hh (insert): Remove, replace by
5620 std::vector interface. Update callers.
5622 * flower/include/array.icc (insert): Change signature to
5623 match std::vector interface.
5625 * flower/include/array.icc (vector_sort): Bugfix.
5627 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5629 * lily/parser.yy (output_def_head_with_mode_switch): new
5630 production. Result: dashes and underscores may be used in the
5633 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5635 * python/convertrules.py (conv): oops. One slash too much.
5637 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5639 * flower/include/std-vector.hh (sort): Remove, replace by
5640 ::vector_sort. Update callers.
5642 * flower/include/std-vector.hh (slice): Remove. Update callers.
5645 * flower/test-std.cc (vector_sort): New test.
5647 2006-02-01 Graham Percival <gpermus@gmail.com>
5649 * Documentation/user/putting.itely: fixes from Erik.
5651 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5653 * flower/test-std.cc: Add simple unit test for vector migration.
5655 * stepmake/stepmake/test*: Unit test support.
5657 * flower/include/std-vector.hh (del): Remove. Use erase (),
5660 * flower/include/array.hh (begin, end): Add.
5663 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5665 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5666 std::string not String.
5668 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5671 * lily/prob.cc (Prob): copy type_ too.
5673 * lily/lily-guile.cc (mangle_cxx_identifier): new
5674 function. Class_bla::foo_bar_[px] ->
5675 ly:class-bla::foo-bar[?!]. Changes throughout
5677 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5679 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5681 * lily/beam.cc (calc_direction): take dir from visible stem in
5684 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5686 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5687 Fix -1, >=0 boundary checks for unsigned vsize.
5689 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5690 loop for unsigned vsize.
5692 * configure.in (--enable-std-vector): New option.
5693 (--enable-std-string): On by default.
5695 * flower/include/std-vector.hh: New file. Enable switch to
5696 std::vector, update client code.
5698 2006-01-30 Graham Percival <gpermus@gmail.com>
5700 * scm/document-translation.scm: clarify "this context is also
5701 known as". Thanks, Werner!
5703 * Documentation/user/putting.itely: small fixes from Don Blaheta.
5705 * Documentation/user/invoking.itely: small fix from Don.
5707 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
5709 * scm/lily.scm (define-scheme-options): rename option
5710 preview-include-book-title to book-title-preview
5711 (define-scheme-options): move force-eps-font-include (from paper
5712 block) to eps-font-include -d option.
5714 * VERSION (PATCH_LEVEL): release 2.7.30
5716 * input/bach-schenker.ly (staffPiano): new file.
5718 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5720 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5723 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5725 * ps/lilyponddefs.ps: remove start-system, stop-system,
5726 start-page fluff. This saves putting { } code on the stack, fixing
5727 stack overflows when including EPS files.
5729 2006-01-29 Graham Percival <gpermus@gmail.com>
5731 * Documentation/user/putting.itely: minor fixes (comments on -devel).
5733 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
5735 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5737 2006-01-28 Graham Percival <gpermus@gmail.com>
5739 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5741 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
5743 * input/mutopia/claop.py: Update.
5745 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
5747 * input/regression/completion-heads.ly (texidoc): fix.
5749 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5751 * lily/tie-formatting-problem.cc
5752 (set_ties_config_standard_directions): use abs iso fabs for ints.
5754 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5756 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5757 little less than noteheight, to prevent overlaps in chords.
5759 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5760 head, and fudge stem-attachment.
5762 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5764 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5766 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
5768 * lily/main.cc (main): Debugging aid: catch exceptions.
5770 * flower/std-string.cc (to_string): Robustification. Fixes midi
5771 output with std::string.
5773 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
5775 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5777 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
5779 * Fix -DSTRING_UTILS_INLINED.
5781 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5783 * VERSION (PATCH_LEVEL): release 2.7.29
5785 * lily/relocate.cc (setup_paths): mingw uses std string too.
5787 * lily/*.cc: various fixes for substr(ARG).
5789 * lily/sustain-pedal.cc (print):
5791 * flower/file-name.cc (slashify): use std strings.
5793 * flower/string-convert.cc: remove publib.h
5795 * scm/define-markup-commands.scm (verbatim-file): new markup
5796 command \verbatim-file
5798 * Documentation/topdocs/NEWS.tely: fixup URLs
5800 * input/regression/alignment-vertical-manual-setting.ly (Module):
5803 * lily/align-interface.cc (align_elements_to_extents): overwrite
5804 translations with numbers in alignment-offsets from left bound
5806 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5807 (page-translate-systems): new function: take into account Y-offset.
5809 * Documentation/topdocs/NEWS.tely (Top): document new features.
5811 * input/regression/page-layout-manual-position.ly (Module): new
5814 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
5816 * flower/file-path.cc (path::parse_path): Oops.
5818 * Finish std::string interface. For now, use std:: marker
5819 throughout for easy s/r.
5821 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5823 * Documentation/user/putting.itely (Score is a single musical
5825 (Score is a single musical expression): more typos.
5827 * scm/page.scm (annotate-space-left): thinko.
5828 (annotate-page): more thinkos.
5830 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5832 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5833 for different \score blocks separately.
5834 (post-process-pages): put write-page-layout into paper block.
5836 * lily/output-def.cc (get_parser): new file.
5838 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5841 * lily/include/output-def.hh (class Output_def): add parser_ member.
5843 * input/regression/page-layout-twopass.ly (Module): new file.
5845 * scm/lily.scm: remove cpp hack.
5847 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5849 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
5851 * GNUmakefile.in (c-clean): New target.
5853 * flower/include/std-string.hh: String/std::string compatibility:
5854 Use NPOS for `not found' (iso -1), use ssize for length () and pos
5857 * flower/rational.cc:
5858 * flower/include/rational.hh:
5861 * flower/include/offset.hh:
5863 * flower/interval.cc:
5864 * flower/include/interval.hh:
5866 * flower/string-convert.cc:
5867 * flower/include/string-convert.hh: Use std::string [interface].
5870 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
5872 * Documentation/index.html.in: clean up.
5874 2006-01-25 Graham Percival <gpermus@gmail.com>
5876 * Documentation/user/putting.itely: another new untested doc section.
5878 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5880 * scm/layout-page-layout.scm (write-page-breaks): write
5881 \spacingTweaks #ALIST. Handle grace timing.
5883 * scm/: more imports.
5885 * scm/page.scm (make-page): add footer/header.
5886 (annotate-space-left): revise: only take page argument.
5887 (layout->page-init): new function.
5889 * scm/layout-page-layout.scm (write-page-breaks): preliminary
5890 version of the system/spacing/linebreak hack writing to the output
5892 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5895 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5898 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
5900 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5902 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5904 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5905 handling to page.scm
5907 * lily/prob-scheme.cc (LY_DEFINE): new file.
5908 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5910 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5913 * lily/music.cc (derived_mark): derive Music from Prob.
5915 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5917 * lily/prob.cc (Module): Implement Prob (Property Object), object
5918 with shared and r/w property alists.
5920 * lily/include/prob.hh (Module): new file. Declare Prob.
5922 * flower/string.cc: remove is_empty().
5924 * flower/include/string.hh (class String): remove String:: qualifier.
5926 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5927 substitute appropriate functions.
5929 * flower/include/string.hh (class String): remove to_str0 and
5930 is_empty(). S&R everywhere.
5932 2006-01-23 Graham Percival <gpermus@gmail.com>
5934 * Documentation/user/basic-notation.itely: add hairpin
5935 after-linebreak tweak to commonprop.
5937 * Documentation/user/putting.itely: added two new sections.
5939 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
5941 * flower/international.cc:
5942 * flower/include/international.hh:
5944 * flower/getopt-long.cc:
5945 * flower/include/getopt-long.hh: Use std::string [interface].
5948 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5950 * stepmake/stepmake/executable-rules.make: Add dependency on
5953 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
5955 * flower/file-path.cc:
5956 * flower/include/file-path.hh: Use std::string [interface].
5959 * flower/direction.cc:
5960 * flower/axis.cc: Unused. Remove.
5962 * configure.in (--enable-std-string): New option.
5964 * flower/std-string.cc:
5965 * flower/include/std-string.hh: New file.
5967 * flower/file-name.cc[STD_STRING]:
5968 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
5970 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5972 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
5974 * scm/define-markup-commands.scm (with-dimensions):
5975 with-dimensions markup command.
5977 * input/test/font-table.ly: use it.
5979 * lily/open-type-font.cc (glyph_list): new function.
5981 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5983 * lily/ttf.cc: remove ly:font-glyph-list scheme function
5985 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
5987 * ly/music-functions-init.ly (parallelMusic): new music function
5988 for parallel music entry.
5990 * scm/define-music-properties.scm (all-music-properties): new
5991 'void music property
5993 * scm/music-functions.scm (ly:music-message): make public, to be
5994 used in music function definitions
5996 * scm/lily-library.scm (collect-music-for-book): discard music
5997 when the 'void property is set.
5999 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6001 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6003 * mf/GNUmakefile: idem.
6005 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6007 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6009 * Documentation/user/notation-appendices.itely (The Feta font):
6012 * input/test/font-table.ly: new file. Generate font table within lily.
6014 * Documentation/user/notation-appendices.itely (The Feta font):
6015 use new font-table.ly file.
6017 * stepmake/stepmake/install-out-targets.make
6018 (local-install-outfiles): only create directory if
6019 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6021 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6023 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6025 * VERSION (PACKAGE_NAME): release 2.7.28
6027 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6028 the right font from a Mac dfont.
6029 (write-preamble): don't forget directory, only look at files.
6031 This fixes problems with TTF files in dfonts that don't match
6032 their PostScript names.
6034 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6035 PS name from TTF font.
6037 * input/regression/tie-manual.ly: document new feature.
6039 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6041 * VERSION (MY_PATCH_LEVEL): bump to .28
6043 * Documentation/user/basic-notation.itely (Ties): add tie examples
6046 * lily/tie-formatting-problem.cc (score_ties_configuration):
6047 symmetry penalties for outer ties.
6049 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6051 * lily/tie-formatting-problem.cc (generate_configuration)
6052 (set_manual_tie_configuration): skip non-pair manual
6053 tie-configuration, so you can set individual ties as
6055 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6057 * input/regression/tie-chord.ly: use generateTiePattern to
6060 * lily/tie-formatting-problem.cc (peak_around): new function.
6061 (score_configuration): use sliding criterion for staff line collisions.
6062 (score_configuration): idem for dot collisions.
6063 (generate_configuration): use separate stem_gap for gap to stem.
6065 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6066 separate penalty factors for x and y distance.
6067 (struct Tie_details): separate penalties for tip and center line collisions.
6069 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6071 * lily/tie-formatting-problem.cc (generate_configuration): make
6072 large ties avoid stafflines in the horizontal section.
6073 (score_configuration): use softcoded penalties
6074 (score_aptitude): idem.
6076 * lily/tie-helper.cc (from_grob): softcode tie details
6078 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6080 * lily/staff-symbol-referencer.cc (on_line): rename from
6083 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6085 * ly/music-functions-init.ly: remove duplicate tag.
6087 * lily/include/*.hh: GCC 4.1 fixes.
6089 006-01-16 Erlend Aasland <erlenda@gmail.com>
6091 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6093 * scm/define-music-types.scm: fix bug in desc. string
6094 for OverrideProperty
6096 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6098 * scripts/lilypond-book.py: bugfix
6100 * scm/define-music-types.scm: fix typos.
6102 2006-01-14 Graham Percival <gpermus@gmail.com>
6104 * Documentation/user/ basic-notation.itely, global.itely,
6105 advanced-notation.itely, instrument-notation.itely: small
6106 additions (bugs and commonly tweaked properties).
6108 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6110 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6111 detection of mingw build.
6112 (MINGW_BUILD): opps.
6114 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6116 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6119 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6121 * scm/music-functions.scm (skip->rest): add skip->rest
6123 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6125 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6128 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6129 config dirs. Aids debugging.
6130 (display_config): also display config files.
6132 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6134 * VERSION: release 2.7.27
6136 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6137 for determining bar size.
6139 * lily/staff-symbol.cc (print): place lines at distance line-positions
6141 * scm/define-grob-properties.scm (all-user-grob-properties): add
6144 * lily/staff-symbol.cc (height): new function.
6146 * input/regression/staff-line-positions.ly: new file.
6148 2006-01-06 Graham Percival <gpermus@gmail.com>
6150 * input/test/add-staccato.ly: remove reference to old file.
6152 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6154 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6155 lilypond binary too.
6157 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6159 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6161 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6163 * scripts/midi2ly.py: Bugfix: Declare datadir.
6165 * make/ly-rules.make:
6166 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6167 that seems to be gone). Fixes make web.
6169 * The grand 2005-2006 replace.
6171 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6173 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6175 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6176 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6177 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6178 like -dgs-font-load.
6180 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6181 remove absolute path to lilypond binary.
6183 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6185 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6187 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6189 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6191 * mf/GNUmakefile: remove broken dvips map symlink.
6193 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6196 * configure.in: Cosmetic fixes.
6198 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6200 * Documentation/user/music-glossary.tely (Pitch names): Added
6201 Spanish pitch names and durations, thanks to Ernesto Gancedo
6203 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6205 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6206 init. Fixes verbose printing of .scm files.
6208 * stepmake/aclocal.m4: add spaces before - options.
6210 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6212 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6213 of path search in local block variable.
6215 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6217 * configure.in (NCSB_DIR): --enable-ncsb-dir
6218 (LINK_GXX_STATICALLY): denko.
6220 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6222 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6223 use locate to find c059033l.pfb.
6225 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6227 * lily/tie-formatting-problem.cc
6228 (problem::generate_base_chord_configuration): Use my_round (was
6231 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6232 do not invoke mbrtowc.
6234 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6236 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6238 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6240 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6242 * Documentation/user/invoking.itely (svg): revise.
6244 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6246 * lily/lexer.ll: use sourcefilename iso. renameinput.
6248 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6250 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6251 <PostScriptName>.ttf instead of c059XXXttf.
6253 * lily/program-option.cc (LY_DEFINE): special support for
6254 --verbose, so it works before option init too.
6256 * mf/GNUmakefile (local-install): oops.
6258 * lily/lyric-hyphen.cc (print): oops.
6260 * buildscripts/pfx2ttf.fontforge: new file.
6262 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6263 ($(outdir)/%.ttf): new rule.
6265 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6268 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6271 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6273 * VERSION: release 2.7.26
6275 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6277 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6279 * lily/font-config.cc (init_fontconfig): verbosity.
6281 * THANKS: add Muziekacademie Lede.
6283 * scripts/musicxml2ly.py (print_voice_definitions): new function
6284 (print_score_setup): new function
6285 (convert): read part definition to output staves properly.
6287 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6290 * python/musicexp.py (Output_printer.__init__): use _ in data
6292 (Output_printer.unformatted_output): new function: no formatting,
6294 (Duration.get_length): remove isinstance() checks for
6295 Output_printer everywhere.
6297 * input/regression/lyrics-bar.ly (texidoc): add
6298 Separating_line_group_engraver.
6300 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6302 * lily/relocate.cc (framework_relocation): New function,
6303 factored from set_relocation ().
6304 (prefix_relocation): Rename from set_relocation ().
6305 (setup_paths): Use it.
6307 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6309 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6310 numbers. Patch by Erlend Aasland.
6312 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6314 * lily/font-config.cc (init_fontconfig): print warning if cache
6315 file is not existant.
6317 * lily/main.cc: don't use #ifdef but #if
6319 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6321 * lily/grob-property.cc (internal_set_property): don't abort on
6322 calculation-in-progress.
6324 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6326 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6327 connect-to-neighbor property not connect-to-other
6329 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6330 (LY_DEFINE): oops. don't forget protection.
6332 * flower/parse-afm.cc (Module): strip AFM handling completely.
6334 * lily/stencil-expression.cc: idem.
6336 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6338 * lily/function-documentation.cc (ly_add_function_documentation):
6339 use static member iso. Protected_scm
6341 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6343 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6345 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6347 * lily/relocate.cc (set_env_dir): New function.
6348 (set_relocation): Use it to fix setting PANGO_PREFIX.
6350 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6352 * input/regression/stem-direction-context.ly: remove rest.
6354 * lily/melody-engraver.cc (process_music): restart for bar lines.
6355 (acknowledge_slur): restart for slurs.
6357 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6359 * Documentation/user/invoking.itely: describe how to view SVG
6360 output using Inkscape which replace embedded fonts with OTF fonts.
6362 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6364 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6366 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6368 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6371 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6373 * VERSION (PACKAGE_NAME): release 2.7.25
6375 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6377 * input/regression/stem-direction-context.ly: new file.
6379 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6381 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6384 * ly/engraver-init.ly: add Melody_engraver
6386 * lily/beam.cc (calc_direction): use default-direction
6387 iso. get_default_direction()
6389 * scm/define-grob-properties.scm (all-user-grob-properties): add
6390 default-direction property.
6392 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6394 * lily/stem.cc (calc_default_direction): remove
6395 Stem::get_default_direction, use default-direction with callback
6398 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6400 * lily/melody-engraver.cc: new file. Acknowledge stems for
6401 interpolated stem directions.
6403 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6405 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6407 * lily/slur-configuration.cc (fit_factor): more robust check for
6408 point in curve X-extent.
6410 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6411 (outside_slur_callback): check for 'outside avoidance.
6413 * lily/slur-configuration.cc (score_extra_encompass): don't use
6414 bound->column() == avoid->column() for checking extents, as this
6415 doesn't work for accidentals.
6417 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6418 DynamicText hardcoding.
6420 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6421 crash if bound stem is NULL
6423 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6426 2005-12-22 Graham Percival <gpermus@gmail.com>
6428 * scm/define-markup-commands.scm: typo. @code{\raise}
6431 * darwin.patch: now used again, includes a
6432 required patch from fink.
6434 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6436 * po/TODO: mention gtranslator along with kbabel.
6437 * po/fi.po: update translations.
6439 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6441 * lily/relocate.cc (setup_paths): Bugfix.
6443 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6445 * lily/slur-configuration.cc (score_extra_encompass): don't use
6446 "avoid" choice for avoid-slur.
6448 * stepmake/bin/install.py (dest): don't create existing dir.
6450 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6452 * stepmake/bin/install.py: Remove file before copying.
6455 * stepmake/aclocal.m4: Do not substitute INSTALL.
6457 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6459 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6460 depend on link-tree.
6462 * lily/relocate.cc (setup_paths): only check path for non-absolute
6463 dir without directory part.
6465 * flower/file-name.cc (is_absolute): new method.
6466 (is_absolute): check root_ too.
6468 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6470 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6471 relocation code. Oops, don't comment out too much.
6473 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6476 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6479 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6481 * .cvsignore: Add install-sh.
6483 * autogen.sh (srcdir): Typo.
6485 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6487 * autogen.sh (srcdir): urg. Touch install-sh.
6489 * stepmake/bin/install-sh (Module): remove.
6491 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6493 * lily/include/relocate.hh: new file.
6495 * lily/relocate.cc: new file. Contain relocation logic.
6497 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6498 (main): read LILYPOND_VERBOSE as the first thing.
6500 * stepmake/aclocal.m4: remove INSTALL variable.
6502 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6503 separate target for making font symlinks.
6504 (documentation-dir): use $(if $(findstring )) for switching off
6507 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6508 something if DOCUMENTATION is no.
6510 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6512 * VERSION: release 2.7.24
6514 * lily/script-column-engraver.cc (stop_translation_timestep):
6515 delay adding to script-column.
6517 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6519 * python/convertrules.py (conv): rule for number-visibility
6521 * lily/slur-configuration.cc (score_extra_encompass): different
6522 distance measure for avoid and inside avoidance.
6523 (score_extra_encompass): use 1/(distance+eps) as penalty.
6525 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6526 encompass objects for generating slur curves.
6528 * lily/slur.cc: use details iso. slur-details property.
6530 * input/regression/slur-tuplet.ly: new file.
6532 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6534 * flower/include/offset.hh (class Offset): new operator /=
6536 * lily/tuplet-number.cc (print): new file, new interface.
6538 * scm/define-grob-properties.scm (all-user-grob-properties):
6539 remove number-visibility property.
6541 * lily/tuplet-bracket.cc (calc_control_points): new function
6542 (calc_connect_to_neighbors): new function.
6543 (print): remove text handling for tuplet numberdef.
6545 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6548 * lily/lily-guile.cc (robust_scm2booldrul): new function
6550 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6552 * lily/tuplet-bracket.cc (calc_position_and_height): use
6553 staff-padding to control whether tuplet brackets are over staves.
6555 * lily/grob.cc (suicide): clear dim_caches_.
6557 * lily/dimension-cache.cc (clear): new function.
6559 * lily/grob.cc (extent): swap order of min-extent and extent
6560 calculations. This fixes hara kiri staves.
6562 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6564 * lily/main.cc: Nitpick: relocation is not based on path, but on
6565 directory (location).
6567 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6569 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6571 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6573 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6575 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6577 * stepmake/stepmake/generic-vars.make (Module): idem.
6579 * stepmake/stepmake/executable-targets.make (default): use it.
6581 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6583 * make/GNUmakefile: don't install make rules.
6585 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6587 (prepend_env_path): more verbosity.
6589 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6591 * GNUmakefile.in: add dir argument for find command.
6593 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6594 fixes weird line numbers for point & click.
6596 * lily/source-file.cc (get_counts): init line/column/char counts.
6598 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6600 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6602 2005-12-16 Graham Percival <gpermus@gmail.com>
6604 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6605 minor fixes from Fredric. Thanks!
6607 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6609 * ly/music-functions-init.ly: add \bar and \clef music function
6611 * lily/lily-lexer.cc: idem.
6613 * lily/parser.yy (FIXME): remove BAR and CLEF.
6615 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6617 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6619 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6620 function arguments too
6622 * lily/main.cc (set_relocation): new function.
6624 * scripts/musicxml2ly.py (convert): add \version
6626 * lily/tie.cc: remove get_default_attachments()
6628 * VERSION (PACKAGE_NAME): release 2.7.23
6630 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6631 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6633 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6635 * lily/tie-formatting-problem.cc (score_ties): new function
6636 (get_variations): new function. Try flipping dirs for collisions.
6637 (generate_optimal_chord_configuration): new function. 1-opt search
6638 for better configuration.
6640 * lily/tie-configuration.cc: new file.
6642 * lily/tie.cc: junk Tie::get_configuration()
6644 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6645 (score_ties_configuration): new function.
6646 (generate_ties_configuration): new function.
6647 (generate_base_chord_configuration): new function.
6648 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6649 (set_manual_tie_configuration): Move body from tie-column-format.cc
6651 * input/regression/tie-dot.ly: new file.
6653 * lily/tie-formatting-problem.cc (score_configuration): score
6656 * lily/tie-helper.cc (get_transformed_bezier): new function
6658 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6660 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6661 -undefined suppress iso. -framework Python
6663 * scm/define-grobs.scm (all-grob-descriptions): set
6664 springs-and-rods (thanks Joe Neeman!)
6666 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6668 * input/no-notation/display-lily-tests.ly (test):
6669 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6670 changed from \tag #'(a b) to \tag #'a \tag #'b
6672 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6674 * Documentation/topdocs/NEWS.tely: strip out-www.
6676 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6678 * config.make.in (AR): add AR and RANLIB
6680 * flower/libc-extension.cc: include cassert
6682 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6685 2005-12-11 Graham Percival <gpermus@gmail.com>
6687 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6689 * stepmake/stepmake/python-modules-vars.make: define
6690 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
6692 * THANKS: added Johannes Schindelin.
6694 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6696 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6698 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6699 Span_arpeggio_engraver, add Tweak_engraver to Score context.
6701 * lily/parser.yy: reorganize file layout.
6703 * ly/music-functions-init.ly: add tweak music function.
6705 * lily/grob-info.cc (ultimate_music_cause): new function:
6706 recursively lookup causes.
6708 * lily/parser.yy (chord_body_element): allow music functions for
6709 post-events, allow music functions for chord elements.
6711 * lily/font-config-scheme.cc (display_fontset): add cast.
6713 * python/convertrules.py (FatalConversionError.sub_syms): \tag
6714 #'(a b) -> \tag #'a \tag #'b rule.
6716 * python/musicexp.py (Output_printer.dump_version): new function
6718 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
6720 * lily/parser.yy (FIXME): remove \tag
6721 (FIXME): remove tag_music() function.
6723 * lily/lily-lexer.cc: remove \tag
6725 * ly/music-functions-init.ly: define music-function "tag"
6727 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6729 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6731 * VERSION (PATCH_LEVEL): release 2.7.22
6733 * input/regression/lyric-hyphen-retain.ly: renew.
6735 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6738 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6739 iso. minimum-length property for rods.
6741 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6742 LyricSpace item to keep lyrics spaced apart.
6744 * ly/engraver-init.ly: remove Separating_line_group_engraver
6746 * Documentation/user/music-glossary.tely: do setfilename before
6749 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
6751 * Documentation/user/lilypond-book.itely: use `,´ after xref:
6752 See xref documentation, for example.
6754 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6756 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6757 pending_skip iso. ly_voice[-1]
6758 (main): add if __main__ for debugging.
6760 * python/musicxml.py (Accidental.__init__): new class.
6762 * scripts/musicxml2ly.py (progress): new function
6763 (musicxml_key_to_lily): don't barf on modeless keys.
6764 (create_skip_music): new function.
6765 (musicxml_spanner_to_lily_event): new function. Handle beams too.
6766 (musicxml_note_to_lily_main_event): new function.
6768 * python/musicexp.py (Music.__init__): add comment field.
6769 (NestedMusic.append): new routine.
6770 (SequentialMusic.print_ly): print comment.
6771 (ArpeggioEvent.ly_expression): new class
6772 (BeamEvent.ly_expression): new class
6773 (NoteEvent.__init__): support for cautionary/forced accs.
6775 * lily/lookup.cc (slur): normal order for array loop.
6777 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6780 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6783 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
6785 * scm/music-functions.scm: Make phrasing slurs follow voice direction
6787 * scripts/lilypond-book.py: Introduce option
6788 --preserve-line-breaks, for usage with srcltx
6790 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6792 * scm/output-lib.scm (print-circled-text-callback): draw circle
6793 around text using make-circle-markup.
6795 * Documentation/user/*: strip out-www from file names.
6797 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
6799 * Documentation/user/lilypond.tely (direntry): remove empty lines;
6800 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6802 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6804 * Documentation/user/GNUmakefile: idem.
6806 * Documentation/user/macros.itexi: strip out-www
6808 * python/rational.py: python 2.3 compat.
6810 * VERSION (PATCH_LEVEL): release 2.7.21
6812 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6813 option formatting, lilypond style.
6815 * python/musicexp.py: grab from Ikebana: a library for composing
6816 ly music expressions.
6817 (Output_printer): class for advanced .ly printing.
6820 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6821 convert to pythonesque structure.
6823 * python/rational.py: PD rational number class.
6825 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
6827 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
6829 * lily/part-combine-iterator.cc: Minor bugfix
6831 * THANKS: Update bughunters
6833 2005-12-02 Werner Lemberg <wl@gnu.org>
6835 * mf/README: Document process for proper mf2pt1 conversion.
6837 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6840 * mf/feta-harmonica.mf: Removed. Unused.
6842 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6844 * scripts/lilypond-book.py (do_file): fix thinkos.
6846 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
6848 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6849 ($(outdir)/parser.cc):
6850 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6852 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
6854 * ly/titling-init.ly (tagline): it should be a space between
6855 "Music engraving by LilyPond" and the version number.
6857 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6859 * VERSION (PACKAGE_NAME): release 2.7.20
6861 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6863 * scm/define-markup-commands.scm (pad-to-box): new markup command.
6865 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6867 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6869 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6871 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6873 * kpath-guile/: remove directory
6875 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6876 file. Encapsulate kpathsea using commandline tools.
6878 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6881 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
6883 * Documentation/user/advanced-notation.itely (Setting automatic
6884 beam behavior): Correct a few typos. Thanks to David Bobroff.
6886 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6887 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6889 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6891 * scripts/*.py: gmane address for bugs.
6893 2005-11-28 Pal Benko <benkop@freestart.hu>
6895 * make/ly-rules.make: add -f switch to mv
6897 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6899 * lily/bar-line.cc: interpret it
6901 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
6903 * configure.in (--disable-documentation): New switch.
6905 * GNUmakefile.in: Use it.
6907 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6909 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6911 * scripts/lilypond-book.py (do_file): search chunks for
6914 * GNUmakefile.in: add copy step in between so we can lose the
6915 out-www directories.
6917 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6919 * lily/pango-font.cc (pango_item_string_stencil): put
6920 geometry.width into glyph-string too.
6922 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
6924 * scm/define-music-display-methods.scm (RevertProperty):
6925 (OverrideProperty): Use grob-property-path property, a list of
6926 symbols, instead of grob-property, which used to be a single
6928 (BassFigureEvent): a figure can be a plain number, not necessarily a
6931 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6933 * VERSION: release 2.7.19
6935 * lily/figured-bass-engraver.cc (process_music): check
6936 figuredBassCenterContinuations first.
6938 * scm/translation-functions.scm (format-bass-figure): make double
6941 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6944 * lily/system-start-delimiter-engraver.cc: move from
6945 Nested_system_start_delimiter_engraver, rename
6946 Nested_system_start_delimiter_engraver ->
6947 System_start_delimiter_engraver.
6949 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6950 bracket type from hierarchy.
6952 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6954 * lily/rest.cc (y_offset_callback): read staff-position.
6956 * scm/define-grob-properties.scm (all-user-grob-properties): don't
6957 mark after-line-breaking-callback as internal.
6959 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6961 2005-11-25 Werner Lemberg <wl@gnu.org>
6963 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6965 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6967 * stepmake/bin/add-html-footer.py (do_file): add google
6969 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6970 staff if first_start_ is true.
6972 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6974 * scripts/midi2ly.py (split_track): add __repr__ members.
6975 (track_first_item): only return Item if not None. This fixes a
6976 problem when dumping a track that starts with an empty channel.
6978 * python/midi.c: doc module.
6980 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
6982 * Documentation/user/global.itely (Creating MIDI files): Fix
6983 compilation problem.
6985 2005-11-22 Graham Percival <gpermus@gmail.com>
6987 * Documentation/user/basic-notation.itely: clarify dynamic
6990 * Documentation/user/advanced-notation.itely: add unicode
6991 escape control example, whatever that is. :)
6993 * Documentation/user/global.itely: added "removing dynamics
6996 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6998 * VERSION (PATCH_LEVEL): release 2.7.18
7000 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7001 System_start_delimiter_engraver by
7002 Nested_system_start_delimiter_engraver.
7004 * lily/nested-system-start-delimiter-engraver.cc (struct
7005 Bracket_nesting_node): new class.
7006 (struct Bracket_nesting_group): new class
7007 (struct Bracket_nesting_staff): new class.
7008 (process_music): create hierarchy of grobs. This allows separate
7009 tuning of different SSDs.
7011 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7012 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7014 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7016 * lily/side-position-interface.cc (aligned_side): multiply
7019 * lily/script-engraver.cc (make_script_from_event): allow setting
7022 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7024 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7026 * scm/define-grobs.scm (all-grob-descriptions): new grob
7027 NestedSystemStartDelimiter.
7029 * input/regression/system-start-heavy-bar.ly: new file.
7031 * lily/nested-system-start-delimiter-engraver.cc: new file.
7033 * lily/nested-system-start-delimiter.cc: new file.
7035 * input/regression/system-start-nesting.ly: new file.
7037 * scm/define-grobs.scm (all-grob-descriptions): use X side
7038 positioning for positioning braces for nested contexts.
7040 * lily/system-start-delimiter.cc (print): don't divide extent by
7042 (print): use style iso. glyph.
7043 (staff_bracket): translate glyph inside routine already.
7045 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7047 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7050 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7052 * scm/define-context-properties.scm
7053 (all-user-translation-properties): rename figuredBassFormatter
7054 from newFiguredBassFormatter.
7056 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7058 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7060 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7062 * lily/beam.cc (calc_beaming): new function.
7063 (calc_shorten): new function.
7065 * THANKS: add Edward Neeman.
7067 * input/regression/accidental-clef-change.ly: new file.
7069 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7071 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7073 * lily/clef-engraver.cc (inspect_clef_properties): reset
7074 localKeySignature for clef changes.
7076 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7078 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7079 add dummy definition that works in Linux and add information in
7080 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7082 * Documentation/user/changing-defaults.itely (Modifying context
7083 plug-ins): Add index for \with.
7085 * Documentation/user/music-glossary.tely (dal segno): Updated
7086 example to version >=2.6.
7088 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7090 * Documentation/user/instrument-notation.itely (Printing chord
7091 names): Reorder \chordmode and \repeat in one example.
7093 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7095 * VERSION: release 2.7.17
7097 * Documentation/topdocs/NEWS.tely (Top): add note about
7100 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7101 new function. Search region of 3 positions for best tie.
7102 (score_configuration): new function.
7103 (score_aptitude): new function.
7104 (generate_configuration): new function.
7105 (get_configuration): new function.
7106 (Tie_formatting_problem): new function
7108 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7110 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7112 * THANKS: add Eduardo Vieira & Ralph Little
7114 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7117 * lily/include/tie-formatting-problem.hh (class
7118 Tie_formatting_problem): add Tie_details to
7119 Tie_formatting_problem. Update calling conventions.
7121 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7124 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7126 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7128 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7129 scm/define-context-properties.scm: Maintenance bugfix: make
7130 ligature brackets work again by removing obsolete ligature
7131 primitive callback push/pop.
7133 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7134 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7137 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7139 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7140 used and do not call it a path.
7141 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7143 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7145 * lily/include/tie-formatting-problem.hh (class
7146 Tie_formatting_problem): new file.
7148 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7150 * Documentation/misc/ChangeLog-2.3: new file.
7152 * lily/audio-staff.cc (output): degarianize.
7154 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7156 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7157 Unset PYTHONOPTIMIZE. Fixes install if set.
7159 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7161 * python/convertrules.py (conv): add warning about drums.
7163 * make/stepmake.make: include toplevel-version.make after config.make.
7165 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7166 also allow python2.4
7168 * config.make.in (configure-srcdir): remove GXX GCC vars.
7170 * stepmake/aclocal.m4: don't do non-srcdir build with
7171 symlinks. Use inclusion, so the src directory name can be changed.
7173 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7175 * make/mutopia-vars.make:
7176 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7179 2005-11-13 Werner Lemberg <wl@gnu.org>
7181 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7182 but the affected path. This ensures that the (overlapping) outlines
7183 have the same direction, which is a necessary prerequisite for
7184 FontForge's algorithm to remove overlaps.
7187 * mf/feta-haak.mf: Formatting.
7188 (draw_bracket): Slightly modify outline to avoid an unnecessary
7190 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7191 them from the affected paths.
7193 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7195 * mf/README: remove xpm / accordion notes.
7197 * lily/tie-column-format.cc (set_chord_outline): add dots into
7198 skyline extents. This fixes tie formatting if the left head has dots.
7200 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7201 space inside the staff.
7202 (get_configuration): shift another position if necessary in case
7205 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7207 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7208 buildscript-dir iso. $(depth)/buildscripts.
7210 * tex/GNUmakefile (local-uninstall): remove
7211 music-drawing-routines.ps juggling.
7213 * stepmake/stepmake/install-targets.make (local-install-files):
7214 prepend src-dir to install targets.
7216 * lily/system-start-delimiter-engraver.cc
7217 (acknowledge_system_start_delimiter): use
7218 add_offset_callback(). This fixes translation of nested
7221 * lily/grob-closure.cc (add_offset_callback): only encaps in
7222 simple_closure if it's a procedure.
7224 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7227 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7228 remove-empty where pertinent.
7230 2005-11-12 Graham Percival <gpermus@gmail.com>
7232 * Documentation/user/instrument-notation.itely: added
7233 Cameron Horsburgh's multiple stanzas docs. Thanks!
7235 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7238 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7239 make picture in builddir, not srcdir.
7241 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7243 * VERSION: release 2.7.16
7245 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7248 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7250 * Documentation/user/examples.itely (Piano templates): Minor
7251 modification to the Piano centered lyrics example.
7253 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7255 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7258 * Documentation/user/point-and-click.itely: simplify p&c
7259 instruction: don't configure firefox. Put lilypond-invoke-editor
7260 in front of the browser.
7262 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7263 (run-browser): new function.
7265 * lily/parser.yy (Lily_lexer): recognize Book
7267 * lily/book.cc (clone): new function
7269 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7271 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7273 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7274 Maintenance bugfix: reduce number of font related warnings by
7275 updating naming conventions for glyph-name.
7277 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7279 * scm/define-grobs.scm (all-grob-descriptions): add
7280 rhythmic-grob-interface to TabNoteHead.
7282 * scm/layout-beam.scm (check-quant-callbacks): remove
7285 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7287 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7288 alignment of centered divisiones.
7290 * scm/scripts.scm (articulations): Maintenance bugfix:
7291 follow-into-staff -> quantize-position.
7293 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7294 plica head in porrectus deminutus.
7296 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7298 * make/lilypond.fedora.spec.in (Group): add %clean section.
7300 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7301 less then 1/5th of total length.
7302 (print): use gap too. Fixes tupletUp-single-bracket.ly
7304 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7305 events into EventChord. This fixes textspanners on mm rests. Fixes
7308 * lily/side-position-interface.cc (get_axis): read side-axis
7309 (set_axis): set side-axis.
7311 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7312 properties everywhere.
7314 * lily/spacing-spanner.cc (breakable_column_spacing): add
7315 average-spacing-wishes. Take maximum if not set.
7316 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7318 * scm/define-grobs.scm (all-grob-descriptions): add
7319 average-spacing-wishes.
7321 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7322 offset callbacks. This fixes alignment for Fingering objects.
7324 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7325 space for key - timesig combination.
7327 * input/regression/script-stem-tremolo.ly (Module): new file.
7329 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7332 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7333 Fixes: c-tremolo-script.ly.
7335 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7337 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7339 * scm/define-grobs.scm (all-grob-descriptions): remove
7340 self-X-offset. Fixes alignment of octavate-8.
7342 * scripts/lilypond-book.py (datadir): look in
7343 LILYPONDPREFIX/share/lilypond/current/
7345 * GNUmakefile.in: symlink current to <VERSION>.
7347 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7349 * lily/main.cc: eps listed as a backend.
7351 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7353 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7355 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7357 * lily/include/score.hh (class Score): remove texts_ member.
7359 * lily/beam.cc (set_stem_lengths): force direction callback.
7360 (print): read quantized-positions, so we can force
7361 Beam::set_stem_lengths to occur.
7362 (rest_collision_callback): use common X parent.
7364 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7366 * flower/file-path.cc (find): Bugfix: Return name of file found.
7368 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7369 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7370 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7372 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7374 * flower/offset.cc: idem.
7376 * mf/*.mf: update email address.
7378 * lily/font-config-scheme.cc: new file.
7380 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7382 * lily/*: cs.uu.nl -> xs4all.nl
7384 * VERSION (PATCH_LEVEL): release 2.7.15
7386 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7389 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7391 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7393 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7395 * lily/staff-performer.cc (process_music): add audio
7396 elements. This makes MIDI instrument changes work once again.
7398 * lily/main.cc (LY_DEFINE): add gmane address.
7400 * lily/beam.cc: remove calc_positions()
7402 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7403 original_ in private scope.
7404 (class Grob): drop pscore_ pointer, change to output_def pointer.
7405 (class Grob): cleanup class definition.
7407 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7409 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7411 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7412 absolute. Better diagnostics.
7414 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7415 This makes lilypond run from the build directory using argv0
7416 relocation (without any --prefix or LILYPONDPREFIX setting).
7418 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7420 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7422 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7423 with simple-closure.
7425 * lily/self-aligment-interface.cc (set_align_self): new function
7426 (set_center_parent): new function.
7428 * lily/side-position-interface.cc (set_axis): new function.
7430 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7433 * scm/define-grob-properties.scm (all-user-grob-properties):
7434 remove [XY]-offset-callbacks add [YX]-offset
7436 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7438 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7439 entry for time signatures after breathing signs. Bug report by
7442 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7444 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7445 not absolute, make it absolute using PATH.
7447 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7449 * python/midi.c (initmidi): Fix type for mingw.
7451 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7453 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7455 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7458 * stepmake/aclocal.m4: Support python cross compiling.
7460 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7463 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7465 * scm/output-lib.scm (chain-grob-member-functions): replace
7468 * lily/chained-callback.cc (Module): remove file.
7470 * lily/rest-collision.cc (force_shift_callback_rest): change to
7473 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7475 * lily/grob.cc (y_parent_positioning): remove axis argument from
7476 parent_positioning callbacks.
7477 (Grob): junk init code
7478 (get_offset): use generic property callbacks for
7479 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7480 (axis_parent_positioning): new function
7481 (axis_offset_symbol): new function
7482 (chain_offset_callback): new function
7483 (add_offset_callback): new function
7485 * lily/beam.cc (rest_collision_callback): change signature; this
7486 is now a chained callback.
7488 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7489 callback administration.
7491 * lily/simple-closure.cc: new file. Smob type that allows "grob
7494 (ly:make-simple-closure FUNC A B)
7496 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7499 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7502 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7504 * lily/rest.cc (polyphonic_offset_callback): remove.
7506 * lily/script-engraver.cc (try_music): remove bool* argument.
7508 * scm/script.scm (default-script-alist): set quantize-position
7511 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7513 * lily/side-position-interface.cc (aligned_side): move staff
7514 position quantization from
7515 Side_position_interface::quantised_position().
7516 (quantised_position): remove
7518 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7520 * input/regression/beam-quant-standard.ly: reindent, set
7521 debug-beam-quanting to #t.
7523 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7524 10000 if this is a "hard" concave beam.
7526 * lily/beam.cc (calc_least_squares_positions): change from
7527 calc_least_squares_dy
7528 (set_stem_lengths): this is now a chained callback.
7530 * lily/context-property.cc (execute_general_pushpop_property):
7531 bugfix override with procedure should have effect.
7533 * scm/define-grob-properties.scm (all-internal-grob-properties):
7534 remove position-callbacks.
7536 * scm/define-grobs.scm (all-grob-descriptions): use
7537 ly:make-callback-chain for positions property.
7539 * scm/layout-beam.scm (check-quant-callbacks): return list of
7542 * scm/lily.scm (type-p-name-alist): add callback-chain
7544 * lily/lily-guile.cc (type_check_assignment): type check failure
7545 is warning not message.
7547 * lily/grob-property.cc (try_callback): walk callback chain if
7550 * lily/chained-callback.cc: new file. new smob type.
7552 * lily/lily-guile.cc (procedure_arity): new function.
7554 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7556 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7558 2005-10-25 John Mandereau <john.mandereau@free.fr>
7560 * Documentation/user/instrument-notation.itely (Figured bass):
7561 describe new features
7563 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7565 * lily/beam.cc (calc_least_squares_dy): use property callback.
7567 * lily/beam-concave.cc (calc_concaveness): use property callback.
7569 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7571 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7575 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7577 * scm/layout-page-layout.scm (page-headfoot): annotate
7580 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7582 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7583 doesn't take y-space.
7585 * scm/paper.scm (paper-alist): fix A7 dimensions.
7587 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7589 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7590 src-wildcard, remove $(wildcard).
7592 * po/GNUmakefile (PO_FILES):
7593 * ps/GNUmakefile (PS_FILES):
7594 * tex/GNUmakefile (TEX_FILES):
7595 * cygwin/GNUmakefile (POSTINSTALLS):
7596 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7597 some wildcard calls.
7599 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7601 * THANKS: add Thomas Bushnell.
7603 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7605 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7606 (lilypond-main): Redirect to gui-main if 'gui is set.
7608 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7609 for alternative installations kludging s/share/lib/g
7612 * SConstruct (libdir_package_version): Define.
7614 * python/SConscript:
7615 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7618 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7620 * lily/main.cc: clarify --safe.
7622 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7624 * VERSION: release 2.7.14
7626 * Documentation/user/*.itely: remove minimumVerticalExtent.
7628 * scm/define-grobs.scm (all-grob-descriptions): remove
7629 RemoveEmptyVerticalGroup
7631 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7633 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7636 * python/convertrules.py (conv): add rules.
7638 * lily/grob.cc: remove is_empty()
7640 * lily/grob-property.cc: remove add_to_list_property().
7642 * scripts/convert-ly.py (datadir): add prefix switching hack to
7645 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7646 space-function tweak.
7648 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7650 * scm/define-grob-properties.scm (all-user-grob-properties):
7651 remove callback property.
7653 * lily/include/grob.hh (class Grob): remove property_callbacks_
7654 member. Properties of procedure type are assumed to be callbacks.
7656 * lily/ligature-engraver.cc (override_stencil_callback):
7657 rewrite. Use noteHeadLigaturePrimitive as source.
7659 * scm/define-grob-properties.scm (all-internal-grob-properties):
7660 remove ligature-primitive-callback
7662 * lily/include/dimension-cache.hh (class Dimension_cache): make
7663 class, with Grob as friend.
7665 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7666 has_extent_callback()
7668 * scm/translation-functions.scm (format-new-bass-figure): read
7669 figuredBassPlusDirection
7671 * scm/define-context-properties.scm
7672 (all-user-translation-properties): add figuredBassPlusDirection.
7674 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7676 * lily/align-interface.cc (set_ordered): new function.
7678 * lily/grob.cc (flush_extent_cache): rewrite.
7680 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7681 Interval pointer directly.
7683 * lily/main.cc (setup_paths): insert extra / .
7684 (setup_paths): junk cff entry.
7686 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7689 * lily/axis-group-engraver.cc (finalize): remove
7690 extraVerticalExtent, minimumVerticalExtent verticalExtent.
7692 * lily/grob.cc (Grob): don't set extent from ctor.
7693 (extent): use property callbacks.
7695 * lily/axis-group-interface.cc: remove set_axes() function.
7697 * lily/grob-property.cc (del_property): new function.
7699 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7701 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7703 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
7705 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
7707 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
7709 * mf/SConscript: Updates.
7711 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7713 * stepmake/stepmake/*:
7717 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7718 from any directory in build-dir. Cleanups.
7720 * make/srcdir.make.in: Remove.
7722 * lily/main.cc (setup_paths): Fix and document build-dir hack.
7724 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7727 * lily/SConscript: Remove ttftools.
7729 * SConstruct: Resurrect.
7731 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7733 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7736 * lily/paper-book.cc (add_score_title): put Paper_score title into
7739 * scm/translation-functions.scm (format-new-bass-figure): also
7740 allow plus in combination with _
7742 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7744 * VERSION: 2.7.13 released.
7746 * lily/note-collision.cc (check_meshing_chords): don't wipe
7747 stencil, merely set transparent.
7749 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
7750 (Top): document #'callbacks.
7751 (Top): document nested \override.
7753 * input/regression/figured-bass.ly: update for slash and pluses.
7755 * input/regression/figured-bass-continuation-forbid.ly (Module):
7758 * scm/translation-functions.scm (format-new-bass-figure): use
7759 slashed-digit if diminished is set.
7760 (format-new-bass-figure): add + if 'augmented is set.
7762 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7764 * input/test/piano-staff-distance.ly: remove file.
7766 * Documentation/user/advanced-notation.itely (Formatting cue
7767 notes): use length-fraction for making stems/beams smaller.
7769 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7772 * lily/new-figured-bass-engraver.cc: new property
7773 centerFiguredBassContinuations
7775 * Documentation/user/changing-defaults.itely (Difficult tweaks):
7778 * lily/context-property.cc (execute_general_pushpop_property):
7781 * input/regression/override-nest.ly: new file.
7783 * python/convertrules.py (FatalConversionError.subber): conversion
7784 rule for #'callbacks
7786 * input/regression/override-nest.ly: new function.
7788 * lily/parser.yy (music_property_def): allow \override #'a #'b =
7791 * lily/context-property.cc (lookup_nested_property): new function.
7792 (evict_from_alist): new function.
7793 (general_pushpop_property): new function.
7794 (execute_general_pushpop_property): rewrite. Support nested
7797 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7799 * lily/beam.cc: use length-fraction too.
7801 * scm/define-grob-properties.scm (all-user-grob-properties):
7802 remove property flag-width-function
7803 (all-user-grob-properties): remove space-function.
7805 * scm/layout-beam.scm: remove flag-width-function.
7807 * lily/beam.cc: remove flag-width-function
7809 * scm/layout-beam.scm: remove beam dir functions.
7811 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7813 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7814 for easier grace tweaks.
7816 * lily/beam.cc: remove dir-function.
7818 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7820 * lily/grob.cc: remove spacing-procedure.
7822 * lily/note-head.cc (calc_stem_attachment): new function.
7823 (internal_print): use callback to get glyph-name.
7825 * lily/grob-property.cc (get_interfaces): new function.
7827 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7829 * lily/stem.cc (calc_stem_end_position): new function.
7830 (calc_length): new function.
7831 document details for stem.
7832 remove Stem::get_direction()
7834 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
7836 * lily/grob-property.cc (set_callback): new function.
7838 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7840 * lily/item-scheme.cc: new file.
7842 * lily/bar-line.cc (before_line_breaking): remove function.
7843 remove bar-size-procedure, break-glyph-function
7845 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7847 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7849 * lily/system-start-delimiter.cc (print): suicide from
7850 here. Remove after_line_breaking_callback.
7852 * lily/script-interface.cc (calc_direction): use callback for direction.
7854 * lily/side-position-interface.cc (aligned_side): don't use
7855 Side_position_interface::get_direction directly. Use callback.
7857 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7859 (get_print_stencil): rename from get_stencil: create stencil with
7860 transparency, color and cause.
7862 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7864 * python/convertrules.py (conv): insert temporary warning rule.
7866 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7868 * lily/grob-property.cc (try_callback): remove marker if applicable.
7870 * lily/grob.cc: elucidate doc about after/before-line-breaking
7872 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7874 * lily/stem.cc (height): idem.
7876 * lily/stem-tremolo.cc: idem.
7878 * lily/slur.cc (height): don't use get_uncached_stencil()
7880 * lily/rest.cc (y_offset_callback): use offset callback
7881 iso. after-line-breaking callback.
7883 * lily/grob.cc: change after/before-line-breaking-callback to
7884 after/before-line-breaking dummy properties.
7886 * lily/include/grob.hh: remove Grob_status.
7888 * scm/define-context-properties.scm
7889 (all-user-translation-properties): remove verticalAlignmentChildCallback
7891 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7892 (calc_direction): use callback
7893 (calc_positions): use callback.
7895 * lily/tie.cc (calc_direction): use callback. Only call parent
7896 positioning for more than one tie.
7898 * lily/tie-column.cc (calc_positioning_done): use callback
7900 * lily/slur-scoring.cc (calc_control_points): use callback
7902 * lily/slur.cc (calc_direction): use callback.
7904 * lily/note-collision.cc (force_shift_callback): remove.
7906 * lily/dot-column.cc (force_shift_callback): remove. Use
7907 other_axis_parent_positioning.
7909 * lily/grob.cc (other_axis_parent_positioning): new function.
7910 (same_axis_parent_positioning): new function
7912 * lily/align-interface.cc (alignment_callback): remove function.
7914 * lily/note-collision.cc (calc_positioning_done): use callback.
7916 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7917 (calc_direction): idem.
7918 remove print function.
7920 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7922 * lily/dot-column.cc (calc_positioning_done): use callback.
7924 * lily/break-align-interface.cc (calc_positioning_done): use callback.
7926 * lily/beam.cc (calc_direction): use pseudo-property for beam
7928 (calc_positions): use callback
7930 * lily/align-interface.cc (calc_positioning_done): use
7931 callback. Fold fixed distance and normal alignment in one function.
7933 * lily/stem.cc (calc_stem_end_position): use callback.
7934 (calc_positioning_done): idem.
7935 (calc_direction): idem.
7936 (calc_stem_end_position): idem
7937 (calc_stem_info): idem.
7939 * lily/grob-property.cc (get_property_data): new function:
7940 (try_callback): new function.
7942 * scm/define-grob-properties.scm (all-user-grob-properties): doc
7945 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7947 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
7949 * lily/tie.cc (get_position): robustness fix. Don't crash if a
7953 * lily/include/*.hh (Module): compile fixes.
7955 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
7957 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
7958 as an argument for char-syntax: use (char-syntax (or nil 0))
7959 instead of (char-syntax nil), thanks to Milan Zamazal.
7961 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7963 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7966 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7969 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7971 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7972 add class_name() method.
7974 * lily/music-scheme.cc: remove ly:music-name.
7976 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
7978 * cygwin/postinstall-lilypond.sh: Remove cruft.
7980 * cygwin/postremove-lilypond.sh: Remove.
7982 * cygwin/GNUmakefile (default): Remove postremove rules.
7984 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7986 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7989 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7992 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7993 consider break index for broken spanner.
7995 * scm/define-markup-commands.scm (wordwrap-string): remove \r
7996 characters from string before splitting.
7998 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8000 * scm/framework-ps.scm (output-preview-framework): use
8001 is-book-title to determine whether to chop off the booktitle.
8003 * lily/paper-book.cc (systems): init from book-title-properties
8004 (add_score_title): init score-title-properties.
8006 * ly/paper-defaults.ly: add {score,book}-title-properties.
8008 * scm/document-backend.scm (lookup-interface): error message if
8009 using unknown interface.
8011 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8014 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8016 (make_bracket): new function.
8018 * scm/lily.scm (define-scheme-options): add paper-size option.
8020 * ly/declarations-init.ly (laissezVibrer): get paper size from
8023 * scm/translation-functions.scm: use \fontsize for changing the
8026 * scm/define-grobs.scm (all-grob-descriptions): set
8027 between-length-limit to 1.0
8029 * lily/tie-helper.cc: add between_length_limit_ detail property.
8031 * mf/feta-bolletjes.mf: typos.
8033 * lily/note-head.cc (internal_print): don't shadow idx
8034 parameter. This fixes wrong attachment for do shape heads.
8036 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8038 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8040 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8042 * scm/layout-slur.scm: rename from slur.scm
8044 * scm/layout-page-layout.scm: rename from page-layout.scm
8046 * scm/layout-beam.scm: rename from beam.scm
8048 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8049 bass-figure-interface
8051 * lily/new-figured-bass-engraver.cc (process_music): add
8052 implicitBassFigures property.
8054 * scm/define-markup-commands.scm (pad-x): new markup.
8056 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8057 minimumVerticalExtent on FiguredBass context.
8059 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8060 case the continuation crosses a line break.
8062 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8064 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8065 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8066 absolute file name bug.
8068 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8070 * VERSION (PACKAGE_NAME): release 2.7.12
8072 * input/regression/figured-bass-continuation-center.ly: new file.
8074 * input/regression/beam-outside-beamlets.ly: new file.
8076 * lily/beam.cc (set_beaming): don't clip edges.
8077 (connect_beams): don't clip edges.
8079 * lily/beaming-info.cc (clip_edges): new function.
8081 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8083 * Documentation/user/instrument-notation.itely (Figured bass):
8084 demonstrate extenders, update seealso links.
8086 * scm/titling.scm (marked-up-headfoot): change tagline
8087 handling. tagline = ##f will blank the tagline as well.
8089 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8091 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8093 * lily/new-figured-bass-engraver.cc (struct
8094 New_figured_bass_engraver): add new_music_found_ member.
8096 * lily/lilypond-version.cc (Lilypond_version): deal with
8097 incorrectly formatted version strings.
8099 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8100 New_figured_bass_engraver by default.
8102 * lily/ttf.cc (print_trailer): only define glyph names when
8103 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8105 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8107 * lily/horizontal-bracket.cc (make_bracket): new function.
8109 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8110 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8111 BassFigureLine, BassFigureAlignment
8113 * lily/new-figured-bass-engraver.cc (process_music): new file.
8115 * lily/figured-bass-continuation.cc: new file.
8117 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8120 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8122 * scripts/lilypond-book.py: Bug fix, put the quote around the
8123 actual score for LaTeX documents.
8125 * scm/define-grobs.scm (all-grob-descriptions): Change
8126 collapse-height of the SystemStartBracket grob to 5.0,
8127 so the bracket disappears for single stave score lines (similarly
8128 to SystemStartBraces).
8130 * Documentation/user/advanced-notation.itely (Polymetric
8131 notation): Clarify the use of compressMusic.
8133 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8134 that the grace spacer note in other staves need the same duration
8135 and document the stroke-style property.
8137 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8139 * Documentation/user/global.itely (Vertical spacing): document
8140 alignment-extra-space and fixed-alignment-extra-space.
8142 * Documentation/topdocs/NEWS.tely (Top): add entry.
8144 * input/regression/alignment-vertical-spacing.ly: new file.
8146 * python/convertrules.py (conv): add rule.
8148 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8150 * lily/align-interface.cc (stretch_after_break): new
8151 function. Read fixed-alignment-extra-space property.
8152 (align_elements_to_extents): read alignment-extra-space property.
8154 * lily/lily-guile.cc (robust_scm2dir): new function.
8156 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8157 (annotate-space-left): new function. Annotate space left on page.
8158 (annotate-y-interval): new function.
8159 (paper-system-annotate-last): new function. Annotate bottom-space.
8161 * mf/feta-beugel.mf (y):
8163 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8165 * VERSION (PACKAGE_NAME): release 2.7.11
8167 * scm/lily-library.scm (interval-translate): new function
8168 (interval-center): new function.
8170 * scm/page-layout.scm (paper-system-annotate): new function. Add
8171 arrows for dimensions.
8173 * scm/stencil.scm (dimension-arrows): new function.
8175 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8177 * input/regression/page-spacing.ly: add annotatespacing
8179 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8180 (LY_DEFINE): new function ly:paper-system-set-property!
8182 * Documentation/user/global.itely (Paper size): explain how to add
8185 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8186 correspond to GS's definition.
8188 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8190 (print): only connect to next bracket if the next one is alive.
8191 (print): set padding to 0.0 if the bound is a breakable
8192 column. This makes tupletFullLength brackets reach up to the staff
8193 line if it doesn't connect to the next line.
8195 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8197 * lily/bar-number-engraver.cc: correct docs.
8199 * scm/output-lib.scm (first-bar-number-invisible): rename from
8200 default-bar-number-visibility
8202 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8204 * scm/define-music-properties.scm (all-music-properties): remove
8207 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8209 * po/fi.po: refresh.
8211 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8213 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8215 (disappear): bugfix.
8217 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8219 * lily/include/paper-system.hh (class Paper_system): remove
8220 staff_extents_ member.
8222 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8224 * lily/include/paper-system.hh (class Paper_system): remove
8225 number_ variable. Remove is_title_. Remove break_before_penalty_
8227 * lily/paper-book.cc (systems): use 'number property iso. number_
8230 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8231 remove ly:paper-system-number.
8233 * scm/lily-library.scm (paper-system-title?): new function.
8235 * lily/book.cc (process): bugfix: flip ?: cases.
8237 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8240 * ly/music-functions-init.ly: add outputProperty music function.
8242 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8244 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8246 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8248 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8250 * lily/paper-system.cc (internal_get_property): new function.
8252 * Documentation/user/global.itely (Vertical spacing): refer to
8255 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8258 * input/regression/page-spacing.ly: new file.
8260 * input/regression/page-top-space.ly: new file.
8262 * lily/spacing-spanner.cc: cmath -> math.h
8264 * lily/paper-system.cc (read_left_bound): new function. Read
8265 line-break-system-details from left bound to determine extents.
8267 * Documentation/user/programming-interface.itely (Using LilyPond
8268 syntax inside Scheme): change applyxxx -> applyXxx.
8270 * ly/music-functions-init.ly: add outputProperty music function.
8272 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8274 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8276 * python/convertrules.py (conv): rule
8278 * ly/music-functions-init.ly: applyxxx -> applyXxx
8280 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8283 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8285 * flower/include/real.hh: include <math.h> iso. <cmath>
8287 * flower/include/offset.hh: include real.hh
8289 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8291 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8292 fix example, now that 'interfaces is no longer directly available.
8294 * lily/book.cc (process): don't crash if paper == NULL.
8298 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8300 * scm/define-music-types.scm (music-descriptions): set length and
8301 start-callback for QuoteMusic
8303 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8305 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8306 arguments. Fixes compilation error with gcc 3.3.
8308 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8310 * VERSION: release 2.7.10
8312 * stepmake/stepmake/python-module-rules.make
8313 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8315 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8318 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8320 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8321 -Werror. Otherwise GCC barfs over various optimizations.
8323 * scm/define-grob-properties.scm (all-internal-grob-properties):
8324 add note-head property
8326 * Documentation/user/instrument-notation.itely (Laissez vibrer
8329 * input/regression/laissez-vibrer-ties.ly: new file.
8331 * lily/laissez-vibrer-engraver.cc: new file.
8333 * lily/include/tie-column-format.hh: new file.
8335 * lily/tie-column-format.cc: new file.
8337 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8339 * lily/laissez-vibrer-tie.cc: new file.
8341 * lily/include/laissez-vibrer-tie.hh: new file.
8343 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8345 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8347 * scm/define-grobs.scm (all-grob-descriptions): add
8348 LaissezVibrerTie, LaissezVibrerTieColumn
8350 * lily/tie-column.cc (set_tie_config_directions): new function
8351 (final_shape_adjustment): new function.
8352 (shift_small_ties): new function.
8354 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8356 * lily/include/tie.hh (struct Tie_details): add x_gap_
8357 (struct Tie_configuration): add head_position_
8359 * lily/tie-column.cc (set_chord_outline): new function.
8361 * mf/cmr.enc.in: remove file.
8363 2005-09-11 Graham Percival <gpermus@gmail.com>
8365 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8367 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8369 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8370 reduce aliasing effects.
8372 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8375 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8377 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8379 * flower/include/real.hh: std::fabs too.
8381 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8383 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8385 * lily, flower: Include C++ iso C headers. Import namespace std
8388 * lily/side-position-interface.cc:
8390 * lily/note-head.cc:
8391 * lily/include/includable-lexer.hh:
8392 * flower/include/string-data.icc: Remove using std::*.
8394 * lily, flower: Include C++ iso C headers. Import namespace std
8397 * lily/side-position-interface.cc:
8399 * lily/note-head.cc:
8400 * lily/include/includable-lexer.hh:
8401 * flower/include/string-data.icc: Remove using std::*.
8403 * Documentation/user/instrument-notation.itely (Entering lyrics):
8404 Multiple latin-1->utf-8 conversion fix.
8406 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8408 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8410 * lily/tie.cc (get_configuration): also avoid dots for non-space
8413 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8415 * Documentation/user/instrument-notation.itely: Bugfix.
8417 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8419 * tex/GNUmakefile: don't install texinfo.tex
8421 * tex/ : cleanup: remove unused files.
8423 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8425 * flower/include/real.hh: using std::{isnan,isinf}
8427 * VERSION (PATCH_LEVEL): release 2.7.9
8429 2005-09-05 Graham Percival <gpermus@gmail.com>
8431 * Documentation/user/ instrument-notation.itely,
8432 advanced-notation.itely: minor tweaks.
8434 * input/test/script-chart.ly: add item padding.
8436 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8438 * flower/offset.cc: use math.h iso. <cmath>
8440 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8443 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8444 (widen-left-stencil-edges): new function. Fix alignment problems
8445 with LaTeX includegraphics.
8447 * lily/text-interface.cc (interpret_markup): use abort().
8449 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8451 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8453 * lily/tie.cc (get_configuration): update bezier shape as we
8455 (get_configuration): don't move large ties if we're outside of the
8458 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8460 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8462 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8464 * .cvsignore: Add auto-generated configure files and then some.
8466 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8468 * scm/define-grobs.scm (DynamicLineSpanner): Add
8469 X-extent-callback. Fixes hairpin-slur collision.
8471 2005-08-31 Graham Percival <gpermus@gmail.com>
8473 * Documentation/user/advanced-notation.itely,
8474 basic-notation.itely: minor changes.
8476 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8478 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8479 \linebreak between each .eps file if \betweenLilyPondSystem is
8482 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8483 music): Document the \linebreak
8485 * Documentation/user/lilypond-book.itely,
8486 input/tutorial/lbook-latex-test.tex,
8487 Documentation/user/examples.itely: Remove \usepackage{graphics}
8489 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8491 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8493 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8496 * scripts/lilypond-book.py (PREAMBLE_LY): define
8497 inside-lilypond-book
8498 (modify_preamble): new function. Insert \RequirePackage{graphics}
8499 when no {graphics found in preamble.
8501 2005-08030 Graham Percival <gpermus@gmail.com>
8503 * Documentation/user/basic-notation.itely, global.itely,
8504 tutorial.itely: misc small changes.
8506 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8508 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8511 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8513 * lily/tie-column.cc (new_directions): put Tie down on center
8516 * lily/script-interface.cc (before_line_breaking): use
8517 Grob::programming_error
8519 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8521 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8524 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8526 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8528 2005-08-29 Werner Lemberg <wl@gnu.org>
8530 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8531 the `*.scale.pfa' files to avoid warnings.
8533 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8535 * lily/tempo-performer.cc (process_music): idem.
8537 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8539 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8541 * Documentation/user/advanced-notation.itely (Text markup): not a
8544 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8546 * lily/staff-performer.cc (initialize): add tempo/name to
8550 2005-08-26 Graham Percival <gpermus@gmail.com>
8552 * Documentation/user/advanced.itely: add text-only example.
8554 * Documentation/user/invoking.itely: add index entries for
8557 * Documentation/user/ tutorial.itely, basic-notation.itely:
8558 small fixes suggested by Steve D. Thanks!
8560 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8562 * input/regression/markup-bidi-pango.ly: new file.
8564 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8565 standard. Remove #ifdef. Remove memleak.
8566 (text_stencil): use text_dir to decide how to composite items.
8567 (text_stencil): determine uniform text direction for the entire
8570 * scripts/lilypond-book.py (output_name): remove
8571 latex_filter_cmd. Non-portable to non-Unix systems.
8572 (get_latex_textwidth): use File.write and os.unlink() instead.
8574 * THANKS: add Vicente & Trevor.
8576 * lily/grob.cc (discretionary_processing): look up origin for
8577 programming_error too.
8579 * input/regression/tie-broken.ly: new file.
8581 * lily/tie-column.cc (set_chord_outlines): set outline for line
8584 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8586 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8587 unscaled transform, just translate stencils.
8589 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8592 * scm/define-markup-commands.scm (wordwrap-string): use
8594 (wordwrap-stencils): idem.
8597 (wordwrap-stencils): translate last line to right for
8598 text-direction = LEFT.
8600 * scm/define-grob-properties.scm (all-user-grob-properties): add
8603 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8605 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8606 when copying a Lily_parser object.
8608 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8610 * scm/define-markup-commands.scm (null): add null markup.
8612 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8614 * lily/item.cc: Add documentation of center-invisible
8616 2005-08-24 Graham Percival <gpermus@gmail.com>
8618 * Documentation/user/advanced-notation.itely: add info about
8621 * Documentation/user/programming-interface.itely: fix example
8622 involving raised text.
8624 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8626 * lily/beam.cc (print): fix X start/end points of isolated
8629 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8631 * lily/multi-measure-rest.cc (set_text_rods): new function.
8633 * lily/vertical-align-engraver.cc (process_music): call
8634 Align_interface::set_axis(). This forces #'elements to be ordered,
8635 preventing random vertical reordering of staves.
8637 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8638 add avoid-slur property.
8640 * Documentation/user/basic-notation.itely (Measure repeats): add
8641 countPercentRepeats example.
8643 * Documentation/user/advanced-notation.itely (Other text markup
8644 issues): remove remark about normal-font. We have \normal-text
8646 * input/regression/tie-chord.ly: add note about remaining bugs.
8648 * lily/tie.cc (print): try Tie_column::set_directions () if
8649 control-points not yet defined.
8651 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8653 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8654 extent. This fixes braces falling out of the EPS bbox.
8656 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8659 2005-08-23 Graham Percival <gpermus@gmail.com>
8661 * {various} : change #up->#UP and #down->#DOWN.
8663 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8665 * Documentation/user/advanced-notation.itely: clarify
8666 what objects handles text on a multimeasure rest.
8668 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8670 * VERSION (PATCH_LEVEL): release 2.7.7
8672 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8674 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8676 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8678 * input/regression/*.ly: formatting clean-up. Default layout
8679 before music expression.
8681 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8682 romanze28-2 example.
8684 * scm/ps-to-png.scm: remove dir-re function.
8685 (make-ps-images): generate page names, instead of globbing them.
8686 This brings down LilyPond memory usage for make web by a factor
8689 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8690 don't use glob. With 3000 files, globbing
8691 Documentation/user/out-www/ can take too much time.
8693 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8695 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8697 * input/regression/tie-manual.ly: new file
8699 * input/regression/tie-chord.ly: update.
8701 * flower/include/interval.hh (struct Interval_t):
8703 * lily/tie.cc (distance): new function
8704 (height): new function.
8705 (init): new function
8706 (Tie_details): new struct.
8708 * lily/skyline.cc (skyline_height): new function.
8710 * lily/tie-column.cc (set_chord_outlines): new function.
8711 (new_directions): read tie-configuration
8713 * lily/skyline.cc: fix ASCII art.
8715 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
8717 * python/convertrules.py (string_or_scheme): Fix spelling error
8719 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8721 * lily/tie-column.cc (set_directions): set directions only once.
8722 (add_configuration): new function.
8724 * lily/tie.cc (set_control_points): new function
8726 * lily/tie-column.cc (new_directions): new function.
8728 * ly/music-functions-init.ly: set 'pitch property
8729 iso. trill-pitch. This makes \relative work with \pitchedTrill
8731 * lily/tie.cc (get_configuration): new function. Don't generate
8732 control points, rather, generate configuration.
8733 remove head-pair property.
8735 * lily/include/tie.hh (struct Tie_configuration): new struct.
8737 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
8739 * Documentation/topdocs/NEWS.tely: clarify.
8741 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8743 * lily/tie.cc: remove minimum-length
8745 * scm/define-grob-properties.scm (all-user-grob-properties):
8746 remove staffline-clearance, y-offset
8748 * input/regression/tie-dots.ly (Module): remove.
8750 * lily/tie.cc (get_control_points): rewrite. Put short ties in
8751 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8753 * input/regression/tie-single.ly: new file.
8755 2005-08-21 Graham Percival <gpermus@gmail.com>
8757 * ly/bagpipe.ly: fix compile problem.
8759 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8761 * lily/midi-item.cc (name): new method.
8763 * lily/staff-performer.cc (acknowledge_audio_element): use
8764 signature of baseclass.
8766 * lily/engraver-group.cc (do_announces): move recursion call out
8769 * lily/drum-note-performer.cc (class Drum_note_performer): use
8770 process_music everywhere.
8772 * ly/performer-init.ly: add default children everywhere.
8774 * lily/paper-book.cc (output): call paper-book-write-midis
8775 directly: always write MIDI, even if no \layout {} block.
8777 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8779 * VERSION (PACKAGE_NAME): release 2.7.6
8781 * lily/percent-repeat-engraver.cc (try_music): don't print warning
8782 about not being able to handle repeat.
8784 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
8786 * Documentation/user/examples.itely (Piano templates):
8787 * lily/include/performer-group.hh: Remove last traces of
8788 Performer_group_performer. Fixes make web.
8790 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8792 * Documentation/user/examples.itely (Piano templates): change
8793 Engraver_group_engraver -> Engraver_group
8795 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8796 scm_stand_in_procs is not weak_any.
8798 * lily/volta-bracket.cc (print): don't use strcmp().
8800 * lily/volta-engraver.cc (process_music): use
8801 Text_interface::is_markup() for setting the 'text property of the
8804 * input/mutopia/claop.py (accents): update syntax to 2.6
8806 * scm/define-context-properties.scm
8807 (all-user-translation-properties): add countPercentRepeats.
8809 * Documentation/user/basic-notation.itely (Measure repeats): add
8810 isolated percent example.
8812 2005-08-18 Graham Percival <gpermus@gmail.com>
8814 * input/ {various}: change direction #1, #-1 to
8815 #up/#down or \fooUp, \fooDown.
8817 * Documentation/user/music-glossary.tely: #-1 to #down.
8819 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8820 to #up, #-1 to #down.
8822 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
8824 * lily/include/engraver-group.hh: rename.
8826 * lily/include/performer-group.hh: rename.
8828 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
8830 * input/test/script-abbreviations.ly: Removed some old LaTeX
8833 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
8835 * python/convertrules.py (conv): inside-slur -> avoid-slur.
8836 Remove functions. Remove if 1: constructs, reindent.
8838 * scripts/convert-ly.py (add_version): Add functions from
8841 * scm/script.scm (default-script-alist):
8842 s/priority/script-priority. Fixes script stacking. Backportme.
8843 (Fermata): Very low priority.
8845 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
8847 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8849 * input/regression/slur-script.ly: remove padding tweaks. Add
8852 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8853 time sigs and related stuff.
8855 * scm/define-grob-properties.scm (all-user-grob-properties): add
8856 @code{} tags to property description.
8858 * lily/include/line-group-group-engraver.hh (Module): remove file.
8860 * python/convertrules.py (conv): add rule for
8861 Engraver_group_engraver -> Engraver_group.
8863 * lily/include/performer-group-performer.hh: analogous.
8865 * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8867 * lily/context-def.cc (instantiate): check for
8868 Engraver_group_engraver and Performer_group_performer not
8869 Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8871 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
8873 * input/les-nereides.ly: Remove three fingering tweaks, update
8876 * input/regression/slur-script-inside.ly: Update, fix doc.
8878 * scm/script.scm: Update to avoid-slur.
8880 * scm/define-grob-properties.scm (avoid-slur): New property.
8882 * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8883 * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8884 outside_slur_callback if avoid-slur != #'inside.
8886 * scm/define-grobs.scm (Fingering, Textscript): No
8887 inside-slur/outside-slur preference.
8888 (DynamicLineSpanner): Always outside slur.
8890 * input/regression/slur-script.ly: More tests.
8892 2005-08-17 Graham Percival <gpermus@gmail.com>
8894 * Documentation/user/lilypond-book: fix notime entry.
8896 * Documentation/user/advanced-notation.itely: add info on
8897 getting an I rehearsal mark.
8899 * Documentation/user/putting.itely: reinstate "I", re-enforce
8900 the fact that \override numbers are the result of
8901 experimentation and personal taste.
8903 * Documentation/user/invoking.itely: update convert-ly bugs.
8905 2005-08-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8907 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8910 * lily/timing-translator.cc (initialize): don't initialize timing.
8912 * input/regression/stem-spacing.ly (Module): remove file.
8914 * input/regression/spacing-stick-out.ly: specify Score context for
8917 * input/regression/clefs.ly: remove spurious {}s
8919 2005-08-17 Heikki Junes <hjunes@cc.hut.fi>
8921 * Documentation/topdocs/NEWS.tely,
8922 input/regression/repeat-percent-count.ly: clarify a bit.
8924 2005-08-16 Nicolas Sceaux <nicolas.sceaux@free.fr>
8926 * input/no-notation/display-lily-tests.ly: delete
8927 display-lily-init call.
8929 * ly/music-functions-init.ly (displayLilyMusic): move
8930 display-lily-init call at top level, so that the user should not
8933 * scm/define-music-display-methods.scm (note-name->lily-string):
8934 retrieve note names directly from pitchnames using new function `rassoc'.
8935 (display-lily-init): note names list construction removed.
8937 2005-08-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8941 * lily/lily-parser.cc (get_header): copy module, instead of
8944 * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8947 * Documentation/user/basic-notation.itely (Measure repeats): add
8948 links to Counter grobs.
8950 * scm/define-grobs.scm (all-grob-descriptions): add
8951 DoublePercentRepeatCounter
8952 (all-grob-descriptions): add PercentRepeatCounter
8954 * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8955 also create counter grobs.
8957 * lily/separation-item.cc (extremal_break_aligned_grob): don't
8958 return grob without space-alist.
8960 * input/proportional.ly: tune staff-padding.
8962 * input/regression/repeat-percent-count.ly: new file.
8964 2005-08-16 Nicolas Sceaux <nicolas.sceaux@free.fr>
8966 * input/no-notation/display-lily-tests.ly: moved from
8967 input/regression/ to input/no-notation. Be sure to call
8968 `display-lily-init' before trying to use the display function.
8970 2005-08-16 Mats Bengtsson <mabe@s3.kth.se>
8972 * scripts/lilypond-book.py (option_definitions): Don't localize
8973 the empty string. Fixes bug when --psfonts was used with
8976 2005-08-15 Graham Percival <gpermus@gmail.com>
8978 * lily/tuplet-bracket.cc: simple build fix.
8980 * Documentation/user/putting.itely: use "we" instead of "I".
8982 * Documentation/user/basic-notation.itely: cautionary accidentals
8983 work with naturals, too.
8985 2005-08-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8987 * lily/tuplet-bracket.cc (calc_position_and_height): add
8988 staff-padding support.
8990 * input/proportional.ly: set staff-padding.
8992 * VERSION (PATCH_LEVEL): release 2.7.5
8994 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8995 fixes. Remove tweaks.
8997 * input/regression/tuplet-slope.ly: add a test case.
8999 * lily/tuplet-bracket.cc (calc_position_and_height): revert
9000 erroneous fix. Add spanner bounds to offset array with relative X
9003 * ly/engraver-init.ly: add Rest_engraver only once.
9005 * scm/define-music-display-methods.scm (KeyChangeEvent): only do
9006 (*parser*) lookup if (*parser*) != #f.
9008 2005-08-15 Jan Nieuwenhuizen <janneke@gnu.org>
9010 * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
9011 Cut-and paste update.
9013 * input/regression/slur-script.ly: Add example of reverting
9014 inside-slur for fingering.
9016 * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
9017 TextScript): Explicitly set inside-slur #f, forcing these out of slur.
9019 * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
9020 outside_slur_callback if inside-slur == #f (as opposed to unset).
9022 2005-08-14 Jan Nieuwenhuizen <janneke@gnu.org>
9024 * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
9025 encoding files are already removed.
9027 2005-08-15 Mats Bengtsson <mabe@s3.kth.se>
9029 * Documentation/user/advanced-notation.itely (Instrument names):
9030 Document a workaround for instrument names that collide with
9031 system start braces/brackets.
9033 2005-08-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
9035 * lily/rest-collision.cc (do_shift): spello.
9037 * input/proportional.ly: use #'used property. Set break-overshoot
9040 * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
9042 * lily/paper-column.cc: add #'used property
9044 * lily/mark-engraver.cc (stop_translation_timestep): set grob
9045 array for staves found.
9047 * lily/metronome-engraver.cc (stop_translation_timestep): set grob
9048 array for stavesFound.
9050 * lily/staff-spacing.cc (next_note_correction): add fixed and
9051 space to calling convention. This fixes spacing of accidentals
9054 * input/regression/spacing-accidental-stretch.ly: add barline -
9057 * scm/framework-ps.scm (page-header): add version number to
9061 * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
9063 2005-08-13 Graham Percival <gpermus@gmail.com>
9065 * Documentation/user/global.itely: add "fit as much as
9066 possible onto this page" example (Vertical spacing).
9068 2005-08-13 Jan Nieuwenhuizen <janneke@gnu.org>
9072 * buildscripts/fixcc.py: Fixes.
9074 2005-08-12 Graham Percival <gpermus@gmail.com>
9076 * Documentation/user/advanced-notation.itely: add markup
9077 example to Text spanners.
9079 2005-08-12 Mats Bengtsson <mabe@s3.kth.se>
9081 * Documentation/user/basic-notation.itely (Ties): Add example of
9082 tying a tremolo to a chord. Thanks to Steve Doonan.
9084 * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
9085 properties and move tieMelismaBusy to the list of written
9088 2005-08-12 Heikki Junes <hjunes@cc.hut.fi>
9090 * po/TODO: suggest to use a dedicated tool like kbabel.
9092 * po/fi.po: update using kbabel.
9094 2005-08-12 Jan Nieuwenhuizen <janneke@gnu.org>
9096 * *: Remove obsolete files. Nitpick run.
9098 * lily/lily-guile.cc (parse_symbol_list): Bugfix.
9100 2005-08-11 Jan Nieuwenhuizen <janneke@gnu.org>
9102 * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa. Copy SVG
9105 * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
9107 * lily/lily-guile.cc (parse_symbol_list): Rewrite. Grok multiple
9108 whitespace as symbol separator.
9110 * lily/side-position-interface.cc: Add slur-padding.
9112 * input/regression/slur-script.ly: Fixed. Backportme? This is
9113 quite a large fix, and it never worked in a stable release; so not
9114 really a regression.
9116 * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
9117 Update cut and paste code from Slur_engraver.
9119 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9122 * scm/define-grobs.scm (DynamicLineSpanner): Add
9123 dynamic-line-spanner-interface.
9124 (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
9126 2005-08-09 Jan Nieuwenhuizen <janneke@gnu.org>
9128 * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
9129 to_boolean () so that non-set 'inside-slur means false.
9131 * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
9132 slur has control-points. Skip script without direction. Always
9133 do_shift if script inside slur, even if slur not contained in
9134 script y-extent. Increment k in loop.
9136 2005-08-11 Mats Bengtsson <mabe@s3.kth.se>
9138 * scm/define-markup-commands.scm: Improved regexp to search for
9139 EPS bounding boxes and corrected call to ly:warning.
9141 2005-08-10 Nicolas Sceaux <nicolas.sceaux@free.fr>
9143 * Documentation/user/programming-interface.itely (Displaying music
9144 expressions): doc for \displayLilyMusic. Also some precisions in
9145 "Markup construction in Scheme"
9147 2005-08-10 Mats Bengtsson <mabe@s3.kth.se>
9149 * scm/define-markup-commands.scm (normal-text): Added 2 new
9150 markup commands, \normal-text and \medium (the latter thanks to
9153 2005-08-08 Graham Percival <gpermus@gmail.com>
9155 * Documentation/user/programming-interface.itely: fix @{ @}.
9157 * scm/define-markup-commands.scm: add linewidth info to
9158 \justify and \wordwrap, add "upright is the opposite of italic".
9160 * Documentation/user/advanced-notation.itely: shaped->shape,
9161 add (cons (markup "foo")) type of example to text markup,
9162 reword multi-measure rests section.
9164 * lily/note-heads-engraver.cc: changed Shaped->Shape in a
9165 comment. No actual code was touched.
9167 * Documentation/user/invoking.itely: add more info about
9168 \include. Thanks, Bruce!
9170 * THANKS: add Bruce Fairchild, alphabetise.
9172 * Documentation/user/global.itely: document \score{\header{}}
9175 * Documentation/user/basic-notation.itely: reword multi-measure
9176 rest discussion in Rests.
9178 2005-08-08 Mats Bengtsson <mabe@s3.kth.se>
9180 * Documentation/user/programming-interface.itely (Markup
9181 construction in Scheme): Corrected example and tried to clarify
9182 the implicit \line in the table.
9184 2005-08-07 Graham Percival <gpermus@gmail.com>
9186 * Documentation/user/instrument-notation.itely: moved
9187 some bagpipe info back into the bagpipe section. Somehow
9188 it ended up in the "other vocal issues" section?! :o_O
9190 2005-08-07 Jan Nieuwenhuizen <janneke@gnu.org>
9192 * scm/framework-ps.scm (dir-join): Rename from path-join (joins
9193 directories, not paths).
9195 2005-08-06 Jan Nieuwenhuizen <janneke@gnu.org>
9197 * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
9198 plain emmentaler/aybabtu. Backportme.
9200 * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
9201 missing dir correction.
9203 2005-08-05 Graham Percival <gperlist@shaw.ca>
9205 * scm/define-markup-commands: fix reversed justify/wordwrap
9208 2005-08-05 Jürgen Reuter <reuter@ipd.uka.de>
9210 * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
9211 lily/gregorian-ligature-engaver.cc,
9212 lily/include/ligature-engraver.hh,
9213 lily/include/coherent-ligature-engraver.hh,
9214 lily/include/gregorian-ligature-engraver.hh: make these classes
9215 truely abstract. This should fix some internal oddities such as
9216 duplicate as well as dead translator/property declarations, and
9217 also some dead code.
9219 * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
9220 bugfix: avoid message "junking empty ligature" on ligature
9221 brackets by collecting dummy grobs.
9223 2005-08-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
9225 * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
9227 * input/proportional.ly (staffKind): bugfix.
9228 (staffKind): updates by Trevor Baca.
9230 * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
9233 * lily/tuplet-bracket.cc (print): check whether edge-text is a
9236 * lily/beam.cc (rest_collision_callback): call position_beam() if
9239 * VERSION: release 2.7.4
9241 * input/regression/spacing-uniform-stretching.ly: new file.
9243 * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
9245 * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
9248 * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
9250 * input/proportional.ly: new file.
9252 * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
9255 * lily/tuplet-engraver.cc (finalize): new function. Reset right
9256 bounds to currentCommandColumn for the last step.
9257 (start_translation_timestep): if tupletFullLength is set, set
9258 bound to Paper Column
9260 * input/regression/tuplet-full-length.ly (indent): new file.
9262 * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
9263 clique of loose columns, eg. a set of grace notes in strict
9266 * input/regression/spacing-strict-spacing-grace.ly: new file.
9268 * lily/key-signature-interface.cc: change property name to
9271 * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
9274 * python/convertrules.py (conv): keyAccidentalOrder ->
9277 * lily/key-engraver.cc (create_key): always print a cancellation
9278 for going to C-major/A-minor, regardless of printKeyCancellation.
9279 (create_key): remove typecheck for visibility. This fixes key
9280 signature not being printed.
9282 * lily/spacing-determine-loose-columns.cc: new file.
9284 * input/regression/spacing-strict-notespacing.ly: new file.
9286 * lily/spacing-spanner.cc (generate_springs): rename from
9288 (generate_pair_spacing): new function.
9289 (init, generate_pair_spacing): set between-cols for floating
9292 * lily/spaceable-grob.cc (get_spring): new function.
9294 * lily/tuplet-bracket.cc (print): on the left, the overshoot is
9295 relative to the right edge of the prefatory matter.
9297 * lily/beam.cc (print): read break-overshoot to determine where to
9298 stop/start broken beams.
9300 * input/regression/spanner-break-overshoot.ly: new file.
9302 2005-08-04 Graham Percival <gperlist@shaw.ca>
9304 * ly/bagpipe.ly: updated.
9306 * Documentat/user/instrument.itely: un-comment out bagpipe example.
9308 2005-08-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
9310 * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
9311 support: now (de)crescs avoid slurs as well.
9313 * Documentation/user/instrument-notation.itely (Bagpipe example):
9314 comment out non-functioning bagpipe example.
9315 (Bagpipe definitions): idem.
9317 * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
9318 (Top): add proportionalNotationDuration example.
9320 * input/regression/spacing-proportional.ly: new file.
9322 * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
9325 * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
9326 fixes beams with a single stem (eg. beams across linebreaks.)
9328 * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
9330 * flower/rational.cc (operator +): prevent overflow. This fixes
9331 heavily nested tuplets.
9333 * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
9334 have to protect even those unlikely to be corrupted data members.
9336 2005-08-04 Graham Percival <gperlist@shaw.ca>
9338 * ly/bagpipe.ly: new file.
9340 * THANKS: added Sven Axelsson.
9342 2005-08-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
9344 * lily/spacing-engraver.cc (stop_translation_timestep): directly
9345 copy proportionalNotationDuration into currentMusicalColumn if
9348 * lily/spacing-spanner.cc (musical_column_spacing): if
9349 uniform-stretching set, fixed space is 0.0
9351 * input/regression/spacing-multi-tuplet.ly: show
9352 uniform-stretching property.
9354 * lily/spacing-spanner.cc (effective_shortest_duration): new function.
9356 * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
9357 (struct Spacing_options): new struct.
9359 * lily/spacing-basic.cc: new file.
9361 * lily/spacing-spanner.cc (note_spacing): remove outdated code:
9362 delta_t doesn't have to be smaller than shortest_playing_len
9364 2005-08-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
9366 * input/regression/markup-arrows.ly: new file.
9368 * lily/tuplet-bracket.cc: document new behavior.
9370 * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
9373 * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
9375 * scm/define-grobs.scm (all-grob-descriptions): set arrows as
9378 * lily/tuplet-bracket.cc: add edge-text property.
9379 add break-overshoot.
9380 (print): read break-overshoot.
9381 (print): read edge-text, add stencils.
9383 * mf/feta-arrow.mf: new file.
9385 * mf/feta-generic.mf: add feta-arrow.
9387 2005-08-03 Mats Bengtsson <mabe@s3.kth.se>
9389 * Documentation/user/lilypond-book.itely (An example of a
9390 musicological document): Added flag -o to dvips for people who use
9391 the default setting in teTeX where output is sent to the printer.
9393 * Documentation/user/global.itely (Vertical spacing): Added
9394 reference to the Axis_group_engraver which documents the *Extent
9397 2005-08-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
9399 * Documentation/user/basic-notation.itely (Tuplets): add note
9400 about nested tuplets. Remove BUG.
9402 * input/regression/tuplet-nest.ly: update: remove manual hack.
9404 * lily/tuplet-bracket.cc (print): use robust_scm2drul
9405 (print): manually call print() for subtuplets.
9406 (calc_position_and_height): add subtuplets to the
9407 support. Vertically shift outer tuplet
9409 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
9410 remove-first for Lyrics, ChordNames and FiguredBass
9412 * scm/define-grob-properties.scm (all-internal-grob-properties):
9413 use ly:grob-array? iso. grob-list?
9414 (all-internal-grob-properties): add tuplets grob-array.
9416 * lily/tuplet-bracket.cc (add_tuplet_bracket):
9419 2005-08-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
9421 * input/test/time-signature-staff.ly: new file.
9423 * ly/declarations-init.ly (center): escape to Scheme. Fixes
9424 spurious #<Music FingerEvent> errors. Backportme.
9426 2005-08-03 Mats Bengtsson <mabe@s3.kth.se>
9428 * Documentation/user/programming-interface.itely (Markup
9429 construction in Scheme): Corrected markup syntax in the
9432 2005-08-03 Graham Percival <gperlist@shaw.ca>
9434 * Documentation/user/instrument-notation.itely: small update
9435 to bagpipe notation docs; thanks Sven!
9437 * Documentation/user/basic-notation.itely: add link about trills.
9439 2005-08-02 Graham Percival <gperlist@shaw.ca>
9441 * Documentation/user/music-glossary: remove accidentally committed
9444 2005-08-02 Yoshinobu Ishizaki <isizaki@mte.biglobe.ne.jp>
9446 * lily/lily-parser.cc (get_header): new function. Enable multiple
9447 \header definitions.
9449 * lily/parser.yy (lilypond_header_body): use get_header.
9452 * scm/lily-library.scm (print-score-with-defaults): renamed
9453 $globalheader to $defaultheader
9455 * Documentation/user/global.itely (Creating titles): added short
9456 explanation that multiple headers are useable.
9459 2005-08-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
9461 * lily/module-scheme.cc (LY_DEFINE): new file.
9463 * Documentation/user/advanced-notation.itely (Font selection): add
9464 doco for make-pango-font-tree.
9466 2005-07-31 Graham Percival <gperlist@shaw.ca>
9468 * Documentation/user/music-glossary: more languages
9471 * Docuemntation/user/instrument-notation.itely: minor
9472 update for bagpipe example.
9474 2005-07-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9476 * input/regression/+.ly (TODO): add some text.
9478 2005-07-28 Graham Percival <gperlist@shaw.ca>
9480 * Documentation/user/invoking.itely: \score begins with music.
9482 * Documentation/user/ basic-notation.itely,
9483 instrument-notation.itely: minor changes.
9485 * Documentation/user/music-glossary.itely: began tenuto entry.
9487 2005-07-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
9489 * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
9491 * mf/feta-bolletjes.mf: swap up and down for aiken heads.
9493 2005-07-27 Graham Percival <gperlist@shaw.ca>
9495 * Documentation/user/examples.itely: remove bagpipe template.
9497 * Documentation/user/instrument-notation.itely: add bagpipe
9498 section, maybe fix quotes in lyrics. I hate text encoding.
9499 Clarify chord durations, more bagpipe stuff.
9501 2005-07-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9503 * lily/accidental-engraver.cc: formatting fixes.
9505 * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
9508 * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
9510 * lily/note-column.cc (arpeggio): new function.
9512 * lily/note-spacing.cc (get_spacing): also take arpeggio into
9513 account for spacing.
9515 2005-07-25 Jan Nieuwenhuizen <janneke@gnu.org>
9517 * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
9518 (setup_guile_env): Use it instead of nonstandard setenv. Fixes
9521 2005-07-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9523 * scm/lily.scm (lilypond-all): clear anonymous modules after
9526 2005-07-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9528 * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
9531 * VERSION: 2.7.3 released
9533 * Documentation/user/invoking.itely (Invoking lilypond): add
9534 LILYPOND_GC_YIELD documentation.
9536 * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
9537 scm_from_real / scm_make_real.
9539 * lily/main.cc (setup_guile_env): new function. Set GC min_yields
9540 higher. This increases memory footprint, but provides overall
9541 speedup of 15 to 20%.
9543 * lily/include/translator.hh (class Translator): remove
9544 PRECOMPUTED_VIRTUAL everywhere.
9546 * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
9548 * lily/context.cc (now_mom): non-recursive now_mom()
9550 * lily/include/profile.hh: new file.
9552 * lily/profile.cc: new file.
9554 * lily/grob.cc (Grob::Grob): look properties up directly.
9556 * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
9559 * lily/include/box.hh (class Box): smob Box type.
9561 * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
9563 * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
9564 protect() and unprotect(). Use throughout.
9566 2005-07-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
9568 * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
9570 * scm/define-music-display-methods.scm (markup->lily-string):
9571 markup elements can also be strings (without simple-markup
9574 2005-07-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9576 * lily/context.cc (where_defined): also assign value in
9579 * lily/bezier.cc (get_other_coordinate): use curve_coordinate
9580 (curve_coordinate): new function
9582 * lily/simple-spacer.cc (add_columns): only add rods between
9583 column i and begin/end if keep-inside-line is set (this repleces
9584 allow-outside-line as default)
9586 2005-07-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9588 * lily/tuplet-engraver.cc (start_translation_timestep): only read
9589 tupletSpannerDuration if applicable.
9591 * lily/font-size-engraver.cc (process_music): read fontSize only
9594 * lily/engraver*cc: use throughout.
9596 * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
9598 * lily/translator.cc (add_acknowledger): new file. Directly jump
9599 into an Engraver::acknowledge_xxx () method based on a grobs
9602 * lily/include/translator-dispatch-list.hh (class
9603 Engraver_dispatch_list): new struct, new file.
9605 * scm/define-context-properties.scm
9606 (all-internal-translation-properties): remove acceptHashTable,
9607 acknowledgeHashTable
9609 * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
9611 * lily/engraver-group-engraver.cc (Engraver_group_engraver):
9612 change acknowledgeHashTable to C++ member.
9614 * lily/rest-collision.cc (do_shift): use extract_grob_set().
9616 2005-07-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
9618 * scm/display-lily.scm: new file. Define a `display-lily-music'
9619 function, that displays the music expression given as an argument,
9620 using LilyPond notation.
9622 * scm/define-music-display-methods.scm: new file. Implementation
9623 of display methods for each music type.
9625 * ly/music-functions-init.ly (displayLilyMusic): new function for
9626 displaying music with LilyPond notation.
9628 * input/regression/display-lily-tests.ly: new regression test file
9629 for `display-lily-music'.
9631 * scm/markup.scm: remove obsolete debugging code (for printing
9632 markups with LilyPond notation).
9634 * scm/define-music-types.scm (music-name-to-property-table):
9635 * scm/clef.scm (supported-clefs): export, in order to be accessible
9636 from the (scm display-lily) module.
9638 2005-07-22 Jan Nieuwenhuizen <janneke@gnu.org>
9640 * Documentation/topdocs/NEWS.tely (Top): Typo.
9642 2005-07-22 Heikki Junes <hjunes@cc.hut.fi>
9644 * Documentation/index.html.in, Documentation/texinfo.css,
9645 stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9646 Documentation/bibliography/index.html.in,
9647 Documentation/bibliography/html-long.bst: revert css-width patch,
9648 it does not work with IE6.
9650 2005-07-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9652 * Documentation/texinfo.css: revert 760px hack.
9654 * VERSION: release 2.7.2
9656 * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9658 * Documentation/user/basic-notation.itely (Barnumber check): add
9661 * scm/music-functions.scm (skip-to-last): new function. Show only
9662 last showLastLength part of the \score.
9664 * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9666 * python/convertrules.py (conv): add ly:x-moment rule
9668 * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment -> ly:moment-X
9670 * Documentation/topdocs/NEWS.tely (Top): add new feature.
9672 * Documentation/user/instrument-notation.itely (Flexibility in
9673 alignment): options in subsections.
9675 * lily/lyric-engraver.cc (process_music): don't typeset text for _
9676 syllable text. Instead, assume that the previous lyric text is a
9679 * Documentation/index.html.in: revert 800x600 change.
9681 2005-07-19 Jan Nieuwenhuizen <janneke@gnu.org>
9683 * lily/main.cc (main): Remove invalid handle kludge.
9685 * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9686 (lambda): add gui define.
9688 2005-07-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9690 * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9692 * Documentation/user/instrument-notation.itely (Musica ficta
9693 accidentals): add section Musica ficta accidentals
9695 * lily/accidental-engraver.cc (make_suggested_accidental): new
9697 (make_standard_accidental): move into new function.
9698 (create_accidental): new function.
9700 * scm/define-grobs.scm (all-grob-descriptions): new Grob
9701 AccidentalSuggestion
9703 * lily/output-def-scheme.cc (LY_DEFINE): take default argument.
9705 * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9708 * Documentation/user/global.itely (Page formatting): document
9711 * scm/page-layout.scm (default-page-music-height):
9712 horizontalshift: new variable, shift all systems by
9713 horizontalshift to the right, to make space for instrument names.
9715 * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9717 * lily/input-scheme.cc (LY_DEFINE): take format commands.
9719 2005-07-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
9721 * lily/note-column.cc (dir): idem.
9723 * lily/spacing-spanner.cc (Module): idem.
9725 * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9727 * lily/include/paper-column.hh (class Paper_column): add
9728 non-static get_rank() member.
9730 * VERSION: release 2.7.1
9732 * scm/framework-null.scm: new file, used for benchmarking.
9734 2005-07-20 Heikki Junes <hjunes@cc.hut.fi>
9736 * Documentation/topdocs/INSTALL.texi, configure.in: fix
9737 version dependencies for fontforge and gs.
9739 * Documentation/index.html.in, Documentation/texinfo.css,
9740 stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9741 Documentation/bibliography/index.html.in,
9742 Documentation/bibliography/html-long.bst: optimize width of
9743 html for a 800x600 screen (width:760), increases printability
9744 when 'fit to page' is not set and readability in wide screens.
9746 * stepmake/bin/add-html-footer.py: add missing </p>.
9748 2005-07-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9750 * scm/define-markup-commands.scm (beam): use polygon in beam
9753 * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9754 all acknowledged grobs, and do potentially expensive merge and
9757 * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9759 * configure.in (reloc_b): add --enable-static-gxx to statically
9762 * lily/GNUmakefile (static-gxx-libs): new target
9763 static-gxx-libs. Create symlink to libstdc++.a
9765 * lily/new-lyric-combine-music-iterator.cc: rename to
9766 Lyric_combine_music_iterator
9768 * lily/lyric-combine-music-iterator.cc
9769 (Old_lyric_combine_music_iterator): rename to
9770 Old_lyric_combine_music_iterator
9772 * lily/*-engraver.cc (various): remove double use of
9773 PRECOMPUTED_VIRTUAL function: only use
9774 start_translation_timestep() and stop_translation_timestep(), not
9777 * lily/break-substitution.cc (fast_substitute_grob_array): do
9778 fast_substitute_grob_array for all unordered grob_arrays.
9779 (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9780 (substitute_grob_array): optimize.
9782 * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9784 * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9786 * lily/parser.yy: revert $globalheader patch.
9788 * lily/include/translator.icc
9789 (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9790 Translator methods, without _static helper.
9792 * lily/grob-smob.cc (derived_mark): rename from
9793 do_derived_mark(). Return void.
9795 * scm/define-context-properties.scm
9796 (all-internal-translation-properties): remove tweakCount/tweakRank.
9798 * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9799 predefined break-visibilities.
9801 * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9802 booleans for break-visibility.
9804 * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9806 * python/convertrules.py (conv): rule for Timing_translator.
9808 * lily/include/translator.icc: new file.
9810 * lily/paper-column-engraver.cc (process_music): new
9811 file. Separate Paper_column factory from Score_engraver.
9813 * lily/vertically-spaced-context-engraver.cc: administer
9814 spaceable-staves property of System.
9816 * lily/translator-group-ctors.cc: new file.
9818 * lily/context-property.cc (make_grob_from_properties): construct
9819 the right Grob class programmatically, looking at the class entry
9820 for the meta property.
9822 * lily/break-align-engraver.cc (stop_translation_timestep): call
9823 Break_align_interface::add_element() directly.
9825 * lily/context.cc (measure_position): measure_position() is now a
9828 * lily/include/translator.hh (class Translator): rename
9829 process_acknowledged_grobs() to process_acknowledged() and move to
9832 * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9833 field for each grob description.
9835 * lily/include/translator-group.hh (class Translator_group):
9836 change to base class. Separate class from Translator. This gets
9837 rid of virtual inheritance for Engravers/Performers.
9839 * lily/staff-performer.cc (class Staff_performer): derive
9840 Staff_performer from Performer, not Performer_group_performer
9842 * Lily/translator-group.cc (precomputed_recurse_over_translators):
9844 (precompute_method_bindings): new function. Precompute lists of
9845 Translators, so we only call methods (process_music,
9846 start_translation_timestep, etc.) for Translators needing
9847 it. Also: dispose of pointer-to-member-function calls.
9849 * lily/engraver-group-engraver.cc: remove engraver_each,
9850 recurse_down_engravers ()
9852 * lily/note-head.cc (internal_print): only call
9853 glyph-name-procedure if style != default.
9855 2005-07-16 Graham Percival <gperlist@shaw.ca>
9857 * ly/titling-init.ly: add printallheaders option.
9859 * Documentation/user/global.itely: document printallheaders.
9861 2005-07-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
9863 * lily/system.cc (do_derived_mark): don't mark from object_alist_
9864 anymore, but do it centrally.
9866 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9869 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9871 * scm/output-lib.scm: remove hammer-print-function.
9873 * lily/include/pointer-group-interface.hh (extract_grob_set): new
9874 macro. Declare a Link_array<Grob> and fill it from a grob.
9875 (extract_item_set): idem for item.
9877 * lily/break-substitution.cc: add header.
9878 (fast_substitute_grob_array): rewrite for Grob_arrays.
9879 (substitute_grob_array): idem.
9881 * lily/group-interface.cc (add_thing): remove file.
9883 * flower/include/parray.hh (class Link_array): slice() is const.
9885 * lily/include/grob-array.hh: new file.
9887 * lily/grob-array.cc (spanner): new file.
9889 * lily/beam-quanting.cc (fill): read details property from beam.
9891 * lily/beam.cc: support details property.
9893 * total speedups below: approx 10%.
9895 * lily/include/beam.hh: new struct, softcode beam quanting parameters
9897 * lily/include/grob.hh (class Grob): add interfaces_ member.
9899 * lily/bezier.cc (init_polynomial_cache): new function: cache
9900 binom(3,j) t^j (1-t)^{3-j}
9901 (curve_point): opps, actually use the cache for t^j , (1-t)^j!
9903 * lily/*.cc: substitution throughout.
9905 * lily/grob-property.cc (internal_get_object): new routine.
9906 (internal_set_object): idem. Store grob refrences in separate
9907 alist. This saves processing time, since properties aren't
9908 break-substituted, and the per grob namespace is smaller, both for
9909 grobs and non-grob properties.
9911 * scm/define-grob-properties.scm (all-internal-grob-properties):
9912 remove center-element.
9914 * lily/grob.cc: remove tweak-count, tweak-rank.
9916 2005-07-15 Graham Percival <gperlist@shaw.ca>
9918 * Documentation/user/lilypond-book.itely: fixes example.
9920 2005-07-15 Nicolas Sceaux <nicolas.sceaux@free.fr>
9922 * Documentation/user/global.itely (Creating titles):
9923 * Documentation/user/examples.itely (All headers): change the
9924 place of \header in \score blocks (after music block) to make
9925 examples compile (cf. changes on parser.yy on 2005-07-10)
9927 2005-07-13 Graham Percival <gperlist@shaw.ca>
9929 * python/convertrules.py: add exc -> ecc rule.
9931 * scripts/convert-ly.py: add location of convertrules.py
9934 * Documentation/user/changing-defaults.itely: fix language.
9936 2005-07-12 Jan Nieuwenhuizen <janneke@gnu.org>
9938 * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9940 2005-07-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
9942 * scm/output-socket.scm (grob-bbox): don't use inf?
9944 * flower/include/rational.hh: add operator bool()
9946 * scm/define-music-types.scm (music-descriptions): remove
9947 internal-class-name properties.
9949 * lily/include/event.hh: remove file.
9951 * lily/include/music-constructor.hh: remove file.
9953 * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9956 * lily/music.cc (duration_length_callback): new function.
9958 * lily/event.cc: remove file.
9960 * lily/music-constructor.cc: remove file.
9962 * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9964 * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9965 (get_context_key): idem.
9967 * scm/lily.scm (lambda): new option object-keys (default to #f)
9969 * scm/output-svg.scm (utf-8-string): rename from utf8-string.
9971 * scm/output-gnome.scm: remove beam routine.
9973 * scm/output-ps.scm (scm): idem.
9975 * scm/output-svg.scm: remove beam.
9977 * ps/music-drawing-routines.ps: remove draw_beam.
9979 * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9981 * flower/include/guile-compatibility.hh (scm_from_locale_string):
9982 add scm_from_locale_string compatibility glue.
9984 2005-07-13 Yoshinobu Ishizaki <isizaki@mte.biglobe.ne.jp>
9986 * scripts/lilypond-book.py: Prevent occuring error when
9987 'lilypond-book --output=foo/ somefile.ly' is executed multiple
9988 times and target file shoud be overwritten. (Error message said
9989 'input file and output file is same'.)
9991 2005-07-13 Graham Percival <gperlist@shaw.ca>
9993 * input/regression/slur-extreme.ly,
9994 input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9995 lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9996 mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9997 "excentricity" to "eccentricity".
9999 * Documentation/user/converters.itely: fix URL for Noteedit and
10002 * THANKS: added Yoshinobu Ishizaki.
10004 2005-07-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
10006 * scm/define-markup-commands.scm (justify-field): add.
10008 * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
10010 2005-07-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
10012 * lily/lookup.cc (filled_box): express filled_box with
10015 * scm/midi.scm (paper-book-write-midis): new function. Write all
10016 performances in numbered MIDI files.
10018 * lily/performance-scheme.cc (LY_DEFINE): new file.
10019 (LY_DEFINE): new function ly:performance-write.
10021 * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
10023 (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
10025 * scm/framework-*.scm: use port arguments throughout.
10027 * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
10029 * lily/paper-outputter.cc (Paper_outputter): take port argument.
10031 * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
10033 * scm/framework-texstr.scm (output-framework):
10035 * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
10037 * scm/output-lib.scm (tablature-stem-attachment-function):
10038 tablature stem attachment fix.
10040 2005-07-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
10042 * lily/bezier.cc: hardcode binomial coefficients of order 3.
10044 * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
10046 * scm/define-music-types.scm (music-descriptions): don't use
10047 Music_wrapper type.
10049 * lily/paper-column.cc (print): print moment too.
10051 * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.
10052 remove compatibility cruft.
10054 * lily/parser.yy (score_body): \score can only begin with Music.
10056 * lily/score-scheme.cc (LY_DEFINE): rename scorify to
10057 make-score. Take music argument only. Move parser interaction to
10060 * scm/lily-library.scm (scorify-music): new function.
10062 * python/lilylib.py (datadir): remove 2.1 compat kludge.
10063 (datadir): remove resource import.
10064 (print_environment): remove get_bbox()
10065 (cp_to_dir): remove pre 1.5.2 compat glue.
10067 2005-07-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
10069 * lily/include/simple-spacer.hh (Module): idem.
10071 * lily/include/spring.hh (struct Spring): store inverse
10072 strength. This prevents division by zero.
10074 * VERSION: release 2.7.0
10076 * lily/include/music.hh (class Music): remove Music::duration_log()
10078 * lily/stem-engraver.cc (make_stem): take duration log from event.
10080 * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
10082 2005-07-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
10084 * scm/lily.scm (ly:load): load autochange.scm
10086 * Documentation/user/tutorial.itely (Running LilyPond for the
10087 first time): remove reference to DVI/TeX
10089 * scm/define-markup-commands.scm (text): add \text markup command.
10091 * configure.in (reloc_b): bump requirement to Python 2.2.
10093 * lily/include/dots.hh (class Dots): make has_interface() static.
10095 * python/convertrules.py (conv): add rule for ly:grob-default-font
10097 * scm/define-grobs.scm (all-grob-descriptions): reorganize in
10098 alphabetical order.
10100 * input/regression/trill-spanner-pitched.ly: new file.
10102 * lily/font-interface-scheme.cc (LY_DEFINE): function
10103 ly:grob-default-font (changed from get-default-font).
10105 * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
10107 * lily/note-head.cc (internal_print): if style is not a symbol,
10108 set style to 'default.
10109 (internal_print): no style suffix if glyph-name-procedure not
10110 set. Default to quarter head.
10112 * scm/define-grobs.scm (Module): new grob TrillPitchHead.
10114 * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
10116 * ly/music-functions-init.ly: \pitchedTrill
10118 * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
10120 * ly/Welcome_to_LilyPond.ly: update to 2.6.0
10122 * lily/trill-spanner-engraver.cc (finalize): rename req -> event
10124 * scm/define-markup-commands.scm (pad-markup): pad-markup command.
10128 * po/de.po: update.
10130 2005-07-06 Graham Percival <gperlist@shaw.ca>
10132 * Documentation/user/changing-defaults.itely: add link
10135 * Documentation/user/advanced-notation.itely: add material
10136 to Setting automatic beam behaviour. Thanks, Joe!
10138 * Documentation/user/lilypond.itely: change encoding to utf-8.
10140 2005-07-01 Mats Bengtsson <mabe@s3.kth.se>
10142 * Documentation/user/advanced-notation.itely (Setting automatic
10143 beam behavior): Correct the documentation of
10144 revert-auto-beam-setting (backportme)
10146 2005-07-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
10148 * lily/ly-module.cc (ly_make_anonymous_module): define
10149 %module-public-interface of module.
10151 * lily/lily-parser.cc (print_smob): allow printing of parser smob
10154 2005-07-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
10156 * input/regression/fret-diagrams.ly: stretch example.
10158 2005-06-30 Jan Nieuwenhuizen <janneke@gnu.org>
10160 * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
10163 2005-06-30 Graham Percival <gperlist@shaw.ca>
10165 * Documentation/topdocs/AUTHORS.texi: update personal web address.
10167 * Documentation/user/examples.itely, lilypond-book.itely:
10168 change \RequirePackage to \usepackage.
10170 * Documentation/user/global.itely: document copyright and tagline.
10172 2005-06-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
10174 * Documentation/user/basic-notation.itely (Transpose): remove link
10175 to nonexistent UntransposableMusic.
10177 * scm/output-svg.scm: remove old definitions.
10179 * scripts/lilypond-book.py (do_file): search for kpsewhich before
10182 * python/lilylib.py (search_exe_path): new function.
10184 2005-06-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
10186 * python/lilylib.py (mkdir_p): remove setup_environment()
10189 * buildscripts/mutopia-index.py (headertext): trim text.
10191 * Documentation/topdocs/NEWS.tely (Top): refresh.
10193 * scm/define-markup-commands.scm (wordwrap-string): new function:
10194 split string in paras and words.
10195 (wordwrap-markups): new function.
10196 (wordwrap-stencils): new function.
10198 (wordwrap): use it.
10199 (wordwrap-string): use it
10200 (justify-string): use it.
10202 * scm/lily-library.scm (regexp-split): new function.
10204 * scm/define-markup-commands.scm: remove encoded-simple.
10205 remove font-markup.
10206 (fontsize): remove old version of fontsize.
10207 (wordwrap): new markup function. Wrap into paragraphs.
10209 * VERSION: Branch lilypond_2_6
10210 (MINOR_VERSION): go to 2.7.0
10212 2005-06-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
10214 * po/zh_TW.po: update from translation project.
10216 2005-06-28 Graham Percival <gperlist@shaw.ca>
10218 * scm/midi.scm: compile fix.
10220 2005-06-28 Mats Bengtsson <mabe@s3.kth.se>
10222 * scripts/lilypond-book.py : Fix embarrassing bug in my previous
10223 patch. Now, the tempfile module is loaded too, not only used.
10225 2005-06-28 Stephen Charles McCarthy <stecmccarthy@hotpop.com>
10227 * scm/midi.scm: changed midi volumes in absolute-volume-alist from
10228 0.05 - 1.00 to 0.25 - 1.00
10230 * scm/midi.scm: moved the default-instrument-equalizer procedure
10231 to just under the insturment-equalizer-alist it takes as an
10234 2005-06-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
10236 * Documentation/user/advanced-notation.itely (Font selection):
10239 * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn
10241 2005-06-28 Jan Nieuwenhuizen <janneke@gnu.org>
10243 * THANKS: Add UTF-8 marker.
10245 * Documentation/user/point-and-click.itely (http): Update: use
10246 lilypond-invoke-editor. Fix: instruct to use user.js.
10248 2005-06-27 Graham Percival <gperlist@shaw.ca>
10250 * ly/titling-init.ly: implements printpagenumber, increases
10251 space between dedication and title (to avoid collisions with
10252 "g" and "q" in dedication), and nicer logic about copyright
10253 and instrument fields being printed on the first page.
10256 * Documentation/user/global.itely: document printpagenumber.
10258 2005-06-27 Jan Nieuwenhuizen <janneke@gnu.org>
10260 * Documentation/topdocs/NEWS.tely: Update to 2.6.
10262 2005-06-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
10264 * THANKS: update to 2.6
10266 * VERSION: 2.6.0 released.
10268 2005-06-27 Jan Nieuwenhuizen <janneke@gnu.org>
10270 * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
10271 rule, errorneously removed probably because of misleading comment.
10273 2005-06-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
10275 * python/lilylib.py (datadir): py2exe comments.
10277 * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
10279 * configure.in (reloc_b): make fontconfig REQUIRED.
10281 2005-06-27 Heikki Junes <hjunes@cc.hut.fi>
10283 * po/fi.po: add latest translations.
10285 2005-06-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
10287 * ChangeLog: recode utf-8
10289 * Documentation/pictures/lilypond.xpm (Module): edited photo as
10292 * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
10294 * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r.
10296 * python/convertrules.py (do_conversion): don't print program_name
10297 from within a module
10299 * configure.in (reloc_b): bump fontforge requirement to 20050624.
10301 * python/convertrules.py (conv): add 2.6.0 dummy rule.
10303 2005-06-23 Graham Percival <gperlist@shaw.ca>
10305 * Documentation/user/lilypond-book.itely,
10306 Documentation/user/examples.itely: add \RequirePackage{graphics}.
10308 * ly/titling.ly: checks printfirstpagenumber, adds meter, and
10309 fixes baseline-skip. Thanks Vincent!
10311 * Documentation/user/advanced-notation.itely, global.itely:
10312 moved "Selecting font sizes" to global, since it deals with
10313 notation font size, not text fonts.
10315 2005-06-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
10317 * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
10320 2005-06-23 Mats Bengtsson <mabe@s3.kth.se>
10322 * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
10323 workaround since /dev/stdin doesn't work on Cygwin. Using a
10324 temporary file in the current directory since latex doesn't
10325 understand the path name to the default TMP in Cygwin (at least on
10328 * Documentation/user/global.itely (Creating titles): Correct
10329 misprint in example. Thanks to Rob Vlasaty.
10331 2005-06-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
10333 * VERSION (PATCH_LEVEL): release 2.5.32
10335 * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
10336 variable in lily module
10338 * scm/framework-ps.scm (output-classic-framework): error message
10339 regarding the classic framework.
10341 * Documentation/user/henle-flat-gray.png (Module): new file.
10343 * Documentation/user/baer-flat-gray.png (Module): new file.
10345 * scm/output-lib.scm (fret-number-tablature-format): vcenter and
10346 whiteout for markups.
10348 * buildscripts/substitute-encoding.py (note_glyph): include _ in
10349 regex too. This fixes change clef appearance in PDF.
10351 * ttftool/include/*: remove.
10353 * configure.in (reloc_b): remove TTFTOOL_ENDIAN
10355 * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
10357 * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
10359 * ttftool/*: remove ttftool subdirectory.
10361 * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
10363 * lily/ttf.cc (print_header): new file. Convert to type42, using
10364 FreeType to parse the TTF.
10366 * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
10367 and post table may differ. Pass around post_nglyphs as well.
10369 2005-06-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
10371 * ly/music-functions-init.ly (musicMap): new music function
10374 2005-06-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
10376 * make/mutopia-rules.make: anti-alias-factor = 2
10378 * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
10381 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
10382 anti-alias-factor for lilypond-book runs.
10384 * scm/ps-to-png.scm (scale-down-image): new function.
10385 (my-system): new function.
10386 (make-ps-images): blow up GS resolution by anti-alias-factor,
10387 scale down image by anti-alias-factor. This improves appearance
10389 (make-ps-images): remove showpage. Fixes spurious empty png at
10392 * scm/framework-ps.scm (write-preamble): downcase filename before
10393 string-matching. Should fix .TTF files (as opposed to ttf files)
10395 * Documentation/user/tutorial.itely (Running LilyPond for the
10396 first time): separate subsections for windows, macos and unix.
10398 * Documentation/user/invoking.itely (Updating files with
10399 convert-ly): add MacOS X note.
10401 2005-06-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
10403 * Documentation/user/introduction.itely (Engraving): don't include
10404 file optical-spacing, add directly.
10406 * lily/paper-outputter.cc (file): open file in binary mode. This
10407 fixes OTF embedding on windows.
10409 2005-06-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
10411 * scm/framework-ps.scm (write-preamble): remove debugging output.
10413 * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
10415 * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
10417 (install-fc-cache): install font cache in installation directories.
10419 2005-06-17 Jan Nieuwenhuizen <janneke@gnu.org>
10421 * scm/editor.scm (editor-command-template-alist): Use char iso
10422 column, except for Emacs.
10423 (get-editor-command): Substitute char too (Bertalan Fodor).
10425 2005-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
10427 * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
10428 quoted ~s. This should fix PNG output on Windows; single quotes
10429 are regular characters on Windows.
10431 2005-06-16 Graham Percival <gperlist@shaw.ca>
10433 * Documentation/user/basic-notation.itely: include ChoirStaff
10434 in System start delimiters.
10436 * Documentation/user/putting.itely: new doc section on
10437 fixing overlapping notation.
10439 2005-06-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
10441 * Documentation/user/global.itely (Paper size): \paper is in
10444 * make/mutopia-rules.make: -ddelete-intermediate-files
10446 * ly/engraver-init.ly: make Staff default child of ChoirStaff.
10448 2005-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
10450 * ChangeLog: Recode utf-8.
10452 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
10453 datadir with .py modules.
10455 2005-06-15 Heikki Junes <hjunes@cc.hut.fi>
10457 * Documentation/user/basic-notation.itely (Ties): add tieDashed.
10459 2005-06-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
10461 * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
10463 * scm/framework-ps.scm (write-preamble): remove status check.
10465 * Documentation/user/invoking.itely (Updating files with
10466 convert-ly): remove -o option.
10468 * VERSION (PACKAGE_NAME): release 2.5.31
10470 * scm/framework-ps.scm (write-preamble): use ly:system.
10471 (write-preamble): verbosity.
10473 * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
10475 * python/convertrules.py: new file. Store conversion rules
10478 2005-06-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
10480 * scm/backend-library.scm (postprocess-output): remove debugging gobs.
10482 2005-06-14 Mats Bengtsson <mabe@s3.kth.se>
10484 * Documentation/topdocs/NEWS.tely (Top): Corrected name of
10487 * Documentation/user/instrument-notation.itely (More stanzas): Add
10488 reference to StanzaNumber.
10490 2005-06-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
10492 * THANKS: separate section for website translators.
10494 2005-06-14 Graham Percival <gperlist@shaw.ca>
10496 * Documentation/topdocs/INSTALL.texi: update vim info;
10497 thanks Simon Bailey!
10499 * Documentation/user/advanced-notation.itely: included
10502 * Documentation/user/advanced-notation.itely,
10503 Documentation/usr/notation-appendices.itely: moved
10504 color names into an appendix.
10506 2005-06-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
10508 * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
10510 * scm/lily.scm (lambda): initialize program options from here.
10512 * scm/framework-*.scm: add header info.
10514 * lily/main.cc (parse_argv): only set output format to pdf if no
10515 other format specified.
10517 * scm/backend-library.scm (postprocess-output): process
10518 'delete-intermediate-files after running convert-to-*. This fixes
10519 PNG generation when 'delete-intermediate-files is set.
10521 2005-06-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
10523 * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
10526 2005-06-13 Graham Percival <gperlist@shaw.ca>
10528 * Documentation/topdocs/INSTALL.texi,
10529 Documentation/user/lilypond-book.itely: typos.
10531 2005-06-12 Pal Benko <benkop@freestart.hu>
10533 * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
10534 added between program name and switch; -b changed to -f not
10537 2005-06-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
10539 * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
10540 (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
10542 * input/sakura-sakura.ly: add \midi.
10544 * buildscripts/mutopia-index.py (find): use /usr/bin/find
10547 * ttftool/test.c (main): cosmetics.
10549 * ttftool/util.c (surely_lseek): use stdio FILE's for I/O
10551 * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
10552 create a ttf2ps binary.
10554 * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
10556 * scm/backend-library.scm (postscript->png): set rename-page-1 to
10559 2005-06-11 Graham Percival <gperlist@shaw.ca>
10561 * Documentation/user/lilypond-book.itely: add warning about
10562 the font warnings in dvips.
10564 2005-06-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
10568 * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
10570 * GNUmakefile.in: remove links for .map, .enc
10571 don't fail if out/ doesn't exist yet.
10573 2005-06-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
10575 * ttftool/util.c (surely_read): return nbytes
10577 * stepmake/bin/text2html.py (txt2html): add utf-8 marker.
10579 * VERSION (PACKAGE_NAME): release 2.5.30
10581 * flower/string-convert.cc (precision_string): >? fix.
10583 * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
10584 (make-ps-images): add verbose -q too.
10586 * lily/default-actions.cc (Module): new file. default
10587 {book,score}-print functions.
10589 * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
10590 pass results via parseStringResult, lookup via ly:parser-lookup.
10592 * lily/lily-parser.cc (Lily_parser): only clone lexer in
10594 (parse_file): encapsulate do_yyparse() in scm_set_current_module()
10595 (parse_string): idem.
10597 * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
10599 * lily/main.cc (main_with_guile): copy be_verbose_global into
10602 2005-06-10 Jan Nieuwenhuizen <janneke@gnu.org>
10604 * scm/backend-library.scm (postscript->pdf):
10605 * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
10606 verbose mode. Search for several names of gs executable.
10608 2005-06-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
10610 * lily/ly-module.cc (ly_make_anonymous_module): call make-module
10611 directly. This fixes a massive memory leak, provided you use CVS
10614 2005-06-10 Erik Sandberg <ersa9195@student.uu.se>
10616 * ly/property-init.ly: Added tieDashed.
10618 * THANKS: Added some bughunters for 2.5.
10620 2005-06-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
10622 * lily/program-option.cc: add debug-gc option.
10624 * lily/include/lily-guile-macros.hh: don't protect exported module
10627 * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
10629 * scm/backend-library.scm (postscript->pdf): use
10630 delete-intermediate-files iso. running-from-gui?
10632 * ttftool/util.c (surely_read): robustness. Allow read() to return
10633 less bytes than requested, as per posix standards.
10635 * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
10638 * ttftool/include/ttftool.h ("C"): rename verbosity to
10639 ttf_verbosity. Add to public interface.
10641 * scm/music-functions.scm (unfold-repeats): remove debugging display.
10643 * lily/program-option.cc: rename from scm-option.cc
10645 * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
10646 (get_help_string): Print pretty help string.
10648 * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10649 to snippet preamble.
10651 * lily/scm-option.cc: remove command-line-settings option. Fold
10652 all command-line options plus default settings in a generic
10655 * flower/getopt-long.cc (table_string): indent 2nd lines of help
10658 2005-06-09 Jan Nieuwenhuizen <janneke@gnu.org>
10660 * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10661 or EXT_ components non-empty.
10663 2005-06-08 Jan Nieuwenhuizen <janneke@gnu.org>
10665 * scm/lily.scm (running-from-gui?): Export.
10667 * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10668 output in .ly source directory.
10670 2005-06-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
10672 * ttftool/util.c (surely_lseek): more verbosity.
10674 * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10677 * lily/parser.yy (Repeated_music): remove >?
10679 * scm/backend-library.scm (postscript->pdf): Support for
10682 * scm/framework-ps.scm (write-preamble): make font loading
10683 switchable to GS via --define-default gs-font-load=1
10685 2005-06-09 Graham Percival <gperlist@shaw.ca>
10687 * Documentation/user/global.itely: added \layout docs.
10689 2005-06-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
10691 * lily/lily-parser-scheme.cc: add unistd.h
10693 2005-06-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
10695 * scm/editor.scm: add char argument.
10697 * scripts/lilypond-invoke-editor.scm (dissect-uri): add char.
10699 * ttftool/util.c (syserror): use errno for better error reporting.
10701 * lily/source-file.cc (get_counts): new function. Calc column,
10702 line and char count in one go.
10704 * lily/binary-source-file.cc (quote_input): rename to quote_input
10706 * lily/input.cc (set): new function.
10708 2005-06-08 Jan Nieuwenhuizen <janneke@gnu.org>
10710 * flower/file-path.cc (find): Bugfix. Append rather than prepend
10711 directory part of file name to search directory.
10713 * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10714 search path and chdir to DIR if --outname=DIR used.
10716 * lily/main.cc (prepend_env_path): Bugfix: Check directory
10717 existence before appending original path.
10719 2005-06-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
10721 * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10724 * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10725 texinfo.tex is always used.
10727 2005-06-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
10729 * flower/include/axis.hh: rename from axes.hh
10731 * lily/include/text-interface.hh (Module): rename from text-item.hh
10733 * VERSION (PATCH_LEVEL): release 2.5.29
10735 * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10737 * scm/framework-ps.scm (font-file-as-ps-string): new function.
10738 (handle-macfont): new function. Call fondu for Native mac fonts.
10740 * scm/define-markup-commands.scm (fill-line): handle text-widths =
10743 2005-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
10745 * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10746 multi-page. Fix .eps regular expression.
10748 2005-06-07 Graham Percival <gperlist@shaw.ca>
10750 * Documentation/user/putting.itely: add info on modifying templates.
10752 * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10753 misc small changes.
10755 2005-06-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
10757 * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10759 * scripts/lilypond-ps2png.scm
10761 * VERSION (PACKAGE_NAME): release 2.5.28
10763 2005-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
10765 * lily/main.cc (prepend_env_path): Do not append /, that does not
10766 work. Localedir lives in datadir, not in prefix.
10768 * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10771 * flower/include/file-cookie.hh: Compile fix.
10773 2005-06-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
10775 * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup.
10777 * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10779 (gulp-port): using read-string!/partial. We don't want to read an
10780 entire PS file (GUILE 1.6 limits strings to 16M)
10782 * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10783 properties. Add font-interface.
10785 * scm/define-grob-properties.scm (all-user-grob-properties):
10786 remove old bracket properties.
10788 * scm/x11-color.scm: reformat.
10790 * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10791 LedgerLineSpanner if new StaffSymbol is found.
10793 * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10794 staff-symbol for finishing staff.
10796 * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10798 * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10799 change black to currentColor everywhere. This fixes color support
10802 2005-06-06 Carl Sorensen <carldsorensen@comcast.net>
10804 * input/regression/fret-diagrams.ly: new file to test fret diagram
10807 * scm/output-tex.scm: remove white-dot and white-text
10809 * scm/output-ps.scm: remove white-dot and white-text
10811 * scm/fret-diagrams.scm (sans-serif-stencil-white): removed --
10812 using ly:stencil-in-color instead
10813 (draw-dots) : remove call to white-dot
10815 2005-06-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
10817 * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10820 * ttftool/ttfps.c: use lily_cookie functions everywhere.
10822 * flower/include/file-cookie.hh: new file. lily_cookie extension
10824 * flower/file-cookie.cc: new file. lily_cookie extension.
10826 2005-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
10828 * scm/editor.scm (editor-command-template-alist): Add syn
10829 editor (Jaap [de Vos]).
10831 2005-06-05 Jan Nieuwenhuizen <janneke@gnu.org>
10833 * scripts/lilypond-ps2png.scm:
10834 * scm/ps-to-png.scm: New file.
10836 * scm/backend-library.scm (postscript->png): Use it.
10838 * scripts/lilypond-ps-to-png.py: Remove file.
10840 * python/lilylib.py (get_bbox, make_ps_images): Remove.
10842 2005-06-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
10844 * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10846 * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10847 start on grace moment. Fixes autobeam-grace.ly.
10849 * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10850 process anything unless we're at the end of a pending beam. Fixes
10851 syncopated 8ths beamed across a beat.
10853 2005-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
10855 * scm/editor.scm (editor-command-template-alist): Start emacs if
10858 * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10860 * flower/file-path.cc (is_file, is_dir): Export.
10862 * lily/main.cc (prepend_env_path, set_env_file): Use them.
10864 2005-06-02 Mats Bengtsson <mabe@s3.kth.se>
10866 * lily/easy-notation.cc: Added include cctype to correct
10869 2005-06-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
10871 * scm/backend-library.scm (postscript->pdf): set resolution to
10872 1200, so bitmap fonts aren't that ugly.
10874 * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10876 * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10877 parent if we have a notehead. Fixes incorrect offsets when
10878 Paper_column is very wide in the X direction.
10880 * input/regression/font-family-override.ly (Module): new file.
10882 * scm/font.scm (make-pango-font-tree): new function.
10884 * lily/beam.cc (before_line_breaking): remove warning about less
10885 than 2 visible stems. We still get a warning when there is only
10888 2005-06-01 Werner Lemberg <wl@gnu.org>
10890 * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10893 2005-06-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
10895 * lily/slur-scoring.cc (generate_avoid_offsets): new
10896 function. Generate avoid offsets once per slur.
10898 * lily/slur.cc (add_extra_encompass): add dependency to
10899 extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10901 * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10902 too. Fixes inf error with added bass notes.
10904 * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10907 * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10909 * input/tutorial/lbook-latex-test.tex: add line length test.
10911 * scripts/lilypond-book.py (set_default_options): new
10912 function. Call this before dissecting snippets, so linewidth
10913 settings reach the snippets.
10915 2005-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
10917 * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10919 2005-06-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
10921 * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10923 2005-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
10925 * stepmake/aclocal.m4: More autopackage friendliness.
10927 2005-05-31 Graham Percival <gperlist@shaw.ca>
10929 * Documentation/index.html.in: remove link to LSR.
10931 * Documentation/user/global.itely: remove duplicate
10932 "dedication" \header{} section.
10934 2005-05-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
10936 * VERSION (PACKAGE_NAME): release 2.5.27.
10938 * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10939 too. Plugs memory leak.
10941 * make/lilypond.fedora.spec.in (Group): remove
10942 lilypond-pdfpc-helper.
10944 * scripts/GNUmakefile (SEXECUTABLES): remove
10945 lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10947 * scm/font.scm (make-century-schoolbook-tree): add Mono as
10948 'typewriter family.
10950 * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10953 * lily/parser.yy (score_body): don't clone Score, that's done in
10954 Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10956 * lily/score-engraver.cc (derived_mark): new function.
10957 (initialize): unprotect Paper_score. This fixes a memory leak.
10959 * lily/score-performer.cc (derived_mark): new function.
10961 * lily/score-translator.cc (get_output): use SCM for get_output() call.
10963 * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10966 * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10969 2005-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
10971 * configure.in (reloc_b): Add --enable-relocation.
10973 2005-05-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
10975 * lily/pfb.cc (LY_DEFINE): show file name when loading PFB.
10977 * input/regression/alignment-order.ly: add Staff example.
10979 2005-05-31 John Mandereau <john.mandereau@free.fr>
10981 * po/fr.po: update.
10983 2005-05-31 Graham Percival <gperlist@shaw.ca>
10985 * Documentation/index.html.in: add link to LSR.
10987 2005-05-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
10989 * scm/define-stencil-commands.scm (Module): new file. Register all
10990 allowed stencil expression heads in a central place.
10992 * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10995 * lily/stencil-expression.cc (all_stencil_heads): registering
10996 stencil expressions.
10998 * lily/stencil-interpret.cc: new file. Stencil expression
11001 * input/xiao-haizi-guai-guai.ly: move file back.
11003 2005-05-30 Graham Percival <gperlist@shaw.ca>
11005 * Documentation/user/advanced.itely, converters.itely,
11006 instrument-notation.itely, lilypond-book.itely: misc small
11009 2005-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
11011 * lily/lexer.ll: Skip UTF-8 BOM at BOF.
11013 * make/lilypond.fedora.spec.in: Fix source url.
11015 * cygwin: Update from mingw patches.
11017 * scm/editor.scm (editor-command-template-alist): Use jedit
11018 -reuseview (Bertalan), add uedit (Patrick Huberts).
11020 * input/xiao-hai-zi-guai-guai.ly: Rename from
11021 xiao-haizi-guai-guai.ly.
11023 * input/*: Reindent, do not use TAB.
11025 * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
11028 2005-05-29 Jan Nieuwenhuizen <janneke@gnu.org>
11030 * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
11031 numerical overflow error.
11033 2005-05-29 Laura Conrad <lconrad@laymusic.org>
11035 * abc2ly.py: fix to syntax error in multi-part output.
11037 2005-05-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
11039 * lily/span-bar.cc (print): sort bar line extents. Fixes problem
11040 with disappearing span bars when alignAboveContext is active
11042 * lily/property-iterator.cc (check_grob): use is-grob?
11043 object-property. Fixes crash-key-sig-font-size.ly.
11045 2005-05-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
11047 * lily/bar-line.cc (print): don't round barlines; this produces
11048 odd aliasing effects in Acroread.
11050 * lily/timing-engraver.cc (process_music): robustness fix.
11052 * lily/context-def.cc (filter_engravers): bugfix.
11054 2005-05-28 Jan Nieuwenhuizen <janneke@gnu.org>
11056 * lily/lilypond.rc.in: Add ly-icon.
11058 * lily/GNUmakefile:
11059 * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
11062 2005-05-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
11064 * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
11066 * ps/music-drawing-routines.ps:
11068 * scm/output-ps.scm: remove draw ez_ball.
11070 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
11071 EasyNotation context definition.
11073 * lily/easy-notation.cc (brew_ez_stencil): new file. Use
11074 Text_interface and color for making easy note heads.
11076 * lily/stencil.cc (with_color): new function.
11078 * ps/music-drawing-routines.ps: remove draw_zigzag_line
11080 * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
11081 output routine. Zigzag now works in SVG too.
11083 * scm/output-tex.scm (filledbox): idem.
11085 * scm/output-svg.scm (filledbox): idem.
11087 * scm/output-ps.scm (lily-def): remove horizontal-line.
11089 * lily/lookup.cc (horizontal_line): use draw-line.
11091 * lily/system-start-delimiter.cc: remove old staff bracket code.
11093 * mf/feta-haak.mf: further tweaks.
11095 * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
11097 * mf/feta-generic.mf: include feta-haak.
11099 * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips
11101 * scm/framework-ps.scm (write-preamble): only load fonts if their
11102 filename is a string.
11104 2005-05-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
11106 * scm/output-svg.scm (circle): support circle.
11107 (bracket): stub for bracket.
11109 * scripts/lilypond-book.py (main): make sure --psfonts warning is
11112 2005-05-26 Graham Percival <gperlist@shaw.ca>
11114 * Documentation/user/lilypond.tely, advanced-notation.itely,
11115 basic-notation.itely, instrument-notation.itely, global.itely,
11116 introduction.itely, tutorial.itely: rearranging, editing,
11119 * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
11120 for compiling on FreeBSD.
11122 2005-05-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
11124 * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
11127 * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
11130 * VERSION: 2.5.26 released.
11132 * scm/titling.scm (marked-up-headfoot): revert Pedro's patch.
11134 2005-05-25 Pedro Kroger <kroeger@pedrokroeger.net>
11136 * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
11137 if printpagenumber is false.
11139 2005-05-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
11141 * lily/font-config.cc (init_fontconfig): comment out FontConfig
11144 * lily/tie.cc (print): support dotted ties.
11146 2005-05-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
11148 * scm/define-grobs.scm (all-grob-descriptions): switch off
11150 (all-grob-descriptions): Arpeggio has Y-extent.
11152 * scm/define-music-properties.scm (all-music-properties): document
11153 length-callback and start-callback as "read-only".
11155 * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
11156 length-callback after creation.
11158 * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
11159 compressmusic -> compressMusic.
11161 * ly/music-functions-init.ly (oldaddlyrics): idem.
11163 * lily/parser.yy: NewLyricCombineMusic ->
11164 LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
11166 2005-05-24 Pedro Kroger <kroeger@pedrokroeger.net>
11168 * ly/Welcome_to_LilyPond.ly: typo.
11170 2005-05-24 Graham Percival <gperlist@shaw.ca>
11172 * Documentation/user/lilypond.tely: move changing-defaults to be
11173 before global issues.
11175 * Documentation/user/basic-notation.itely: move Transpose section
11176 here from advanced/Other.
11178 * Documentation/user/changing-defaults.itely,
11179 advanced-notation.itely: move Fonts to advanced, edit.
11181 2005-05-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
11183 * lily/parser.yy (bare_int): remove rule. From now on, we require
11184 # before negative integers.
11186 2005-05-23 Graham Percival <gperlist@shaw.ca>
11188 * ly/property.ly: Update tieDotted to have the same form as slurDotted.
11190 * Documentation/user/lilypond.tely: change Unified index to
11193 * Documentation/user/advanced-notation.itely,
11194 instrument-notation.itely: editing.
11196 2005-05-23 Jan Nieuwenhuizen <janneke@gnu.org>
11198 * scm/lily.scm (lilypond-all): Bugfix: return failed.
11200 * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
11202 2005-05-21 Jan Nieuwenhuizen <janneke@gnu.org>
11204 * lily/general-scheme.cc (ly:stderr-redirect): Rename from
11205 ly:port-move. Needs to be stderr-specific on mingw.
11208 2005-05-20 Jan Nieuwenhuizen <janneke@gnu.org>
11210 * lily/general-scheme.cc (ly:port-move): Remove.
11212 * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
11215 * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
11216 variables. This eliminates the need for a gs.bat wrapper, which
11219 * scripts/lilypond-invoke-editor.scm (running-from-gui?):
11220 * scm/lily.scm (running-from-gui?):
11221 * lily/main.cc[MINGW]: Remove isatty inversion, this is an
11222 artifact of not compiling with -mwindows.
11224 * scm/editor.scm: Define PLATFORM.
11226 2005-05-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
11228 * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
11229 can start to cut & paste lilypond-book fragments.
11231 * scm/define-music-types.scm (music-descriptions): remove
11232 UntransposableMusic
11234 2005-05-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
11236 * scm/output-ps.scm (glyph-string): remove / before CIDs.
11238 2005-05-20 Graham Percival <gperlist@shaw.ca>
11240 * Documentation/user/instrument-notation.itely: remove *Engraver.
11242 * Documentation/user/advanced-notation.itely: edit, rearrange.
11244 2005-05-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
11246 * scm/output-ps.scm (glyph-string): take cid? argument. Use
11247 findresource iso. findfont for CID CFF fonts.
11249 * VERSION (PACKAGE_NAME): release 2.5.25
11251 * ly/Welcome_to_LilyPond.ly: add \version
11253 2005-05-20 Graham Percival <gperlist@shaw.ca>
11255 * Documentation/user/programming-interface.itely: move
11256 \displayMusic into its own section.
11258 * Documentation/user/basic-notation.itely: finish editing.
11260 2005-05-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
11262 * flower/file-path.cc (find): don't throw away file_name.dir, but
11263 append to it. Fixes \include with directories.
11265 * flower/include/file-path.hh (class File_path): don't derive from
11268 * flower/include/file-name.hh (class File_name): remove to_str0()
11270 * lily/hara-kiri-engraver.cc (acknowledge_grob): split
11271 Hara_kiri_engraver in separate file.
11273 * lily/slur-configuration.cc (score_encompass): oops, <? to min()
11274 translation went wrong. Fixes vertically translated slurs.
11276 2005-05-19 Graham Percival <gperlist@shaw.ca>
11278 * Documentation/user/basic-notaton.itely: editing.
11280 2005-05-18 Graham Percival <gperlist@shaw.ca>
11282 * Documentation/user/macros.itexi, basic-notation.itely:
11283 add @commonprop (commonly used properties) macro.
11285 2005-05-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
11287 * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
11289 * scripts/lilypond-book.py (invokes_lilypond): new function
11290 (main): only run fontextract if invokes_lilypond() is true.
11292 * lily/function-documentation.cc (ly_add_function_documentation):
11295 * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
11297 * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
11299 * scm/lily.scm (running-from-gui?): lowercase Darwin.
11301 * lily/function-documentation.cc (ly_add_function_documentation):
11302 use scm_hash_table_p() for checking.
11304 2005-05-18 Jan Nieuwenhuizen <janneke@gnu.org>
11306 * Documentation/user/advanced-notation.itely (Text scripts):
11307 Change nonexisting @internalsref{Text markup} to @ref{Text
11308 markup}. Change @internalsref{Text script} to
11309 @internalsref{TextScript}.
11311 * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
11313 2005-05-17 Graham Percival <gperlist@shaw.ca>
11315 * Documentation/user/tutorial.itely, basic-notation.itely,
11316 changing-defaults.itely: remove duplicate cindex entries
11317 that appear on the same page.
11319 * scm/define-grobs.scm: change default padding for TextSpanner.
11321 * Documentation/topdocs/AUTHORS.texi: update email address.
11323 * Documentation/user/global.itely: add info about \include.
11325 2005-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
11327 * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
11328 when running-from-gui.
11330 * scm/editor.scm (get-editor): Add platform defaults.
11332 * scm/backend-library.scm (postscript->pdf): Typo.
11334 2005-05-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
11336 * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
11338 * lily/font-config.cc (init_fontconfig): add warning about cache.
11340 2005-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
11342 * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
11344 2005-05-16 Mats Bengtsson <mabe@s3.kth.se>
11346 * lily/horizontal-bracket.cc (print): Take care of the direction
11347 property so brackets above the stave point downwards.
11349 * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
11350 for HorizontalBracket so it doesn't end up within the stave.
11352 2005-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
11354 * lily/GNUmakefile (default): Typo.
11356 * scm/lily.scm (PLATFORM): Export.
11358 * scm/framework-ps.scm (write-preamble)[MINGW]: Use
11359 load-font-via-GS, ttftool or fopencookie is broken on windows.
11361 * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
11362 -dSAFER, that is broken on windows.
11364 2005-05-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
11366 * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
11369 * scripts/lilypond-invoke-editor.scm: remove stray -
11371 2005-05-15 Jan Nieuwenhuizen <janneke@gnu.org>
11373 * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
11374 Fixes deprecation warning.
11376 * flower/include/string.icc (to_string): Only inline if
11377 -DSTRING_UTILS_INLINED.
11379 * lily/pango-font.cc (pango_item_string_stencil): Normalize file
11380 name. Remove windows comment.
11382 * scm/editor.scm (slashify): New function.
11383 (get-editor-command): Use it.
11384 (get-command-template): Do not alter editor command if
11385 environment value includes `%(file)s' magic.
11387 * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
11388 (dissect-uri): Use it.
11389 (unquote-uri): Bugfix.
11391 2005-05-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
11393 * scm/framework-ps.scm (write-preamble): add TTF rule.
11395 * Documentation/topdocs/README.texi (Top): remove note about
11398 * Documentation/topdocs/INSTALL.texi (Top): remove Flex
11401 * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
11402 function. Figure out where FlexLexer.h lives
11404 * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
11406 2005-05-14 Jan Nieuwenhuizen <janneke@gnu.org>
11408 * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
11409 with Windows root in file name.
11411 * scm/backend-library.scm (ly:system): Only redirect output (using
11412 system and shell, ugh) if /dev/null is writable.
11414 * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
11417 * scm/lily.scm (is-absolute?): New function. Fixes absolute files
11420 * scm/output-ps.scm (grob-cause): Use it. Fixes PDF point and
11423 * flower/file-path.cc (is_dir, is_file): New function. Actually
11424 use result of stat when available.
11426 * flower/file-path.cc (find): Use it. Refactor. Fixes Mingw,
11427 absolute file name and root.
11429 * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
11431 * scm/editor.scm (get-editor-command): Typo: do not apply editor.
11433 * flower/file-name.cc (slashify): Bugfix, do substitute if no
11434 slashes in file name.
11436 2005-05-13 Jan Nieuwenhuizen <janneke@gnu.org>
11438 * Documentation/user/preface.itely (Preface): Run
11439 texinfo-all-menus-update.
11441 * scm/editor.scm (get-editor-command): Bugfix: allow full
11442 LYEDITOR setting, partial XEDITOR setting. With typo fix.
11444 * Documentation/pictures/lilypond-48.xpm: New file.
11446 * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
11448 * ly/Welcome_to_LilyPond.ly: New file.
11450 * lily/main.cc (main): Only identify if we have a terminal.
11452 * scm/backend-library.scm (postscript->png)
11453 (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
11456 2005-05-13 Heikki Junes <hjunes@cc.hut.fi>
11458 * Documentation/topdocs/AUTHORS.texi: polish, update.
11460 2005-05-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
11462 * Documentation/user/preface.itely (Notes for version 2.6): new
11465 * lily/dynamic-engraver.cc (stop_translation_timestep): first set
11466 finished_span_, then call typeset_all(). Fixes spurious "Hairpin
11467 is not fully contained" warnings.
11469 * lily/slur-scoring.cc (get_bound_info): remove warning.
11471 * lily/staff-symbol-engraver.cc (process_music): start initial
11472 spanner in process_music(). This fixes overrides of StaffSymbol
11475 * scm/framework-pdf.scm (Module): remove.
11477 * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
11479 * lily/ambitus-engraver.cc: formatting cleanups.
11481 * mf/feta-solfa.mf (Module): remove.
11483 * ChangeLog: more details about contributions.
11485 2005-05-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
11487 * lily/align-interface.cc (align_elements_to_extents): warn if
11488 called too early. Fixes: disappearing-staff-lines.ly
11490 * VERSION (PACKAGE_NAME): release 2.5.24
11492 2005-05-12 Jan Nieuwenhuizen <janneke@gnu.org>
11494 * stepmake/aclocal.m4: Typo.
11496 * flower/string.cc (substitute): Take two strings or two
11497 characters. Update callers.
11499 2005-05-11 Jan Nieuwenhuizen <janneke@gnu.org>
11501 * flower/file-name.cc (File_name): Slashify.
11503 * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
11505 * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
11507 * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
11509 * configure.in (gui_b): Use it.
11511 * lily/lilypond.rc.in: New file.
11513 * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
11515 2005-05-12 Graham Percival <gperlist@shaw.ca>
11517 * Documentation/user/advanced-notation.itely: edit of Text
11518 section; clarify text scripts vs. text markup.
11520 2005-05-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
11522 * lily/multi-measure-rest-engraver.cc
11523 (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
11524 separation items on start. Fixes mm rests in start of score.
11526 * lily/slur-scoring.cc (move_away_from_staffline): robustness,
11527 don't access StaffSymbol if not there.
11528 Fixes: crash-staff-symbol-engraver.ly.
11530 * lily/instrument-name-engraver.cc (class
11531 Instrument_name_engraver): data member first_. Create
11532 InstrumentName on start.
11534 2005-05-12 Graham Percival <gperlist@shaw.ca>
11536 * Documentation/user/instrument-notation.itely: add guitar
11539 * Documentation/user/introduction.itely,
11540 Documentation/user/lilypond.tely,
11541 Documentation/user/tutorial.itely: begin pruning
11542 unused (duplicated) cindex entries and misc cleanup.
11544 2005-05-12 Mats Bengtsson <mabe@s3.kth.se>
11546 * input/test/volta-chord-names.ly: Bring the explanation up to
11549 2005-05-11 Heikki Junes <hjunes@cc.hut.fi>
11551 * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
11552 Specify `@documentencoding utf-8' for html, ignore warnings.
11554 2005-05-11 Erik Sandberg <ersa9195@student.uu.se>
11556 * THANKS: Added bughunters.
11558 2005-05-11 Heikki Junes <hjunes@cc.hut.fi>
11560 * lily/main.cc: update help string for `lilypond -H'.
11562 * po/fi.po: update.
11564 2005-05-10 Graham Percival <gperlist@shaw.ca>
11566 * Documentation/user/advanced-notation.itely: minor fixes.
11568 2005-05-10 Jan Nieuwenhuizen <janneke@gnu.org>
11570 * scm/editor.scm: New module.
11572 * scm/lily.scm (gui-main): Use it.
11574 * scm/framework-gnome.scm (spawn-editor): Use it.
11576 * scripts/lilypond-invoke-editor.scm: Use it in new script.
11578 2005-05-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
11580 * scm/framework-ps.scm (load-font-via-GS): new function.
11582 * lily/pango-font.cc (pango_item_string_stencil): add support for
11585 * scm/output-ps.scm (glyph-string): add support for CID keyed font.
11587 2005-05-10 Graham Percival <gperlist@shaw.ca>
11589 * Documentation/user/basic-notation.itely: add @ref.
11591 * Documentation/user/advanced-notation.itely: add example
11594 2005-05-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
11596 * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
11598 * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
11599 going through ps2pdf wrappers.
11601 2005-05-09 Jürgen Reuter <reuter@ipd.uka.de>
11603 * Documentation/user/instrument-notation.itely: petrucci note
11604 heads: updated docu
11606 * input/regression/note-head-style.ly: updated regression test;
11609 * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
11612 * mf/parmesan-heads.mf: minor editing; use musicological names
11613 (rather than optical description) as note head names
11615 * scm/output-lib.scm: complete petrucci heads
11617 2005-05-09 Pal Benko <benkop@freestart.hu>
11619 * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
11622 2005-05-09 Jan Nieuwenhuizen <janneke@gnu.org>
11624 * lily/main.cc (main_with_guile): Remove no files check.
11626 * lily/main.cc (ly:usage): Export to Scheme.
11628 * scm/lily.scm (no-files-handler): New function.
11630 * scm/lily.scm (lilypond-main): Use it.
11632 * configure.in (gui_b): Add mbrtowc checking.
11633 Resurrect [utf8/]wchar.h checking.
11635 2005-05-09 Mats Bengtsson <mabe@s3.kth.se>
11637 * Documentation/user/advanced-notation.itely (Metronome marks):
11638 Add link to the program reference for MetronomeMark
11640 * Documentation/user/lilypond-book.itely (An example of a
11641 musicological document): Correct the example using psfonts
11643 2005-05-09 Heikki Junes <hjunes@cc.hut.fi>
11645 * po/fi.po: update after a lesson how to update entries against
11648 * po/TODO: document the lesson.
11650 2005-05-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
11652 * configure.in (gui_b): remove wcrtomb checking.
11654 * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11655 bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11657 2005-05-09 Mats Bengtsson <mabe@s3.kth.se>
11659 * scripts/convert-ly.py: In the conversion to version 1.9.0,
11660 keep Scheme expressions and strings unmodified when doing the
11661 conversion to postfix notation for slurs and beams. Should
11662 hopefully solve most related conversion problems.
11664 * Documentation/user/lilypond-book.itely : Clarify and correct how
11665 to call dvips with -h psfonts.
11667 2005-05-09 Jan Nieuwenhuizen <janneke@gnu.org>
11669 * Documentation/user/instrument-notation.itely (Entering lyrics):
11672 2005-05-09 Graham Percival <gperlist@shaw.ca>
11674 * Documentation/user/lilypond-book.itely: document PSFONTS file.
11676 * Documentation/user/lilypond.tely, lilypond-book.itely,
11677 tutorial.itely: change references to 2.5.x to 2.6.x.
11679 * Documentation/user/instrument-notation.itely: clarified \addlyrics
11682 * Documentation/user/invoking.itely: remove old info about
11685 * Documentation/topdocs/INSTALL.texi: remove old info about
11686 lilypond-profile, add warning about needing international fonts
11689 2005-05-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
11691 * lily/include/grob-info.hh (class Grob_info): make data member
11692 private. Changes throughout.
11694 * input/regression/alignment-order.ly: new file.
11696 * lily/vertical-align-engraver.cc (acknowledge_grob): read
11697 alignAboveContext and alignBelowContext
11699 2005-05-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
11701 * lily/pfb.cc (LY_DEFINE): add cast.
11703 * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11705 (write-preamble): warn about unknown fonts.
11707 * lily/pfb.cc (Module): new function ly:otf->cff
11709 * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11710 (get_otf_table): new function.
11712 2005-05-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
11714 * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11717 2005-05-06 Heikki Junes <hjunes@cc.hut.fi>
11719 * po/fi.po: apply second round of update.
11721 2005-05-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
11723 * scm/x11-color.scm (make-x11-color-handler): don't use
11724 #\sp. Apparently doesn't work on all platforms.
11726 2005-05-06 Graham Percival <gperlist@shaw.ca>
11728 * Documentation/user/advanced-notation.itely, putting.itely,
11729 tutorial.itely, global.itely, introduction.itely: really minor fixes.
11731 2005-05-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
11733 * VERSION (PACKAGE_NAME): release 2.5.23
11735 2005-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
11737 * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11740 * THANKS: Add translators for this release, convert to utf-8.
11742 * mf/GNUmakefile (MFTRACE_FLAGS):
11743 * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11744 outdir as option (WAS: hardcoded).
11746 2005-05-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
11748 * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11751 * THANKS: add Hans Forbrich.
11753 * Documentation/topdocs/NEWS.tely (Top): document new feature.
11755 * Documentation/user/basic-notation.itely (Staff symbol): document
11756 start/stop staff. Reference to ossia.ly
11758 * input/test/ossia.ly: new example using stop and startStaff.
11760 * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11761 in other words, don't create "|" barline at start of the score.
11762 (start_translation_timestep): don't set whichBar for start of score.
11764 * input/regression/staff-halfway.ly: use new functionality.
11766 * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11767 start and stop staff based on events.
11769 * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11771 * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11773 2005-05-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
11775 * Documentation/user/programming-interface.itely (How markups work
11776 internally ): remove \encoding reference.
11778 2005-05-04 Mats Bengtsson <mabe@s3.kth.se>
11780 * scripts/convert-ly.py: Attempt to do a smarter update of
11781 text markups from versions < 1.9.0 with arbitrary nesting.
11783 2005-05-04 Heikki Junes <hjunes@cc.hut.fi>
11785 * po/fi.po: convert to utf-8, and update.
11787 2005-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
11789 * make/lilypond.suse.spec.in: update from suse 2.4 package.
11791 * lily/*.cc: more <? >? to min/max changes
11793 * lily/include/interpretation-context-handle.hh: rename
11794 Interpretation_context_handle to Context_handle.
11796 2005-05-04 Heikki Junes <hjunes@cc.hut.fi>
11798 * input/regression/GNUmakefile (local_delete): use `find` together
11799 with `xargs` to avoid too long argument-lists in cmd line.
11801 2005-05-04 Graham Percival <gperlist@shaw.ca>
11803 * Documentation/user/introduction.itely: updates "About this manual".
11805 * Documentation/user/advanced-notation.itely,
11806 invoking.itely: minor fixes.
11808 2005-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
11810 * COPYING: add font exception. Update FSF address.
11812 * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11813 should be taken without child context.
11815 * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11817 * scm/define-markup-commands.scm (triangle): new command, as
11818 robust replacement for unicode Delta/Triangle.
11820 2005-05-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
11822 * ps/music-drawing-routines.ps: add fillp argument.
11824 * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11826 * lily/font-config.cc (init_fontconfig): don't add cff/
11828 * VERSION (PACKAGE_NAME): release 2.5.22
11830 * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11832 * lily/grace-engraver.cc (consider_change_grace_settings): use
11833 is_alias(). Fixes problem with CueVoice grace notes.
11835 * lily/simultaneous-music-iterator.cc (construct_children): call
11836 Music_iterator::quit() for iterators that start out invalid. This
11837 fixes indefinitely continuing contexts.
11839 * buildscripts/substitute-encoding.py: new file
11841 * Documentation/user/basic-notation.itely (Basic polyphony): fix
11844 * scripts/lilypond-book.py (write_if_updated): print file name.
11846 * Documentation/user/basic-notation.itely (Explicitly
11847 instantiating voices): idem.
11849 * Documentation/user/advanced-notation.itely (Text spanners):
11852 * lily/context.cc (default_child_context_name): the default child
11853 is now first in accepts_list_.
11855 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11856 \defaultchild to all relevant contexts. This fixes:
11859 (Probably also fixes similar problems with ancient
11860 transcriptions getting CueVoices instead of the desired voices.)
11862 * lily/context-def.cc (get_default_child): new function.
11863 (get_accepted): place default child in front of list.
11865 * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11867 * lily/include/context-def.hh (struct Context_def): add
11870 2005-05-03 Graham Percival <gperlist@shaw.ca>
11872 * scm/define-grobs.scm: remove "remove-first" line, since
11873 the absent property is set to #f anyway.
11875 * Documentation/user/basic-notation.itely,
11876 advanced-notation.itely, instrument-notation.itely: minor
11879 * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11881 * Documentation/user/advanced-notation.itely,
11882 changing-defaults.itely: consolidate Text stuff in
11885 * Documentation/user/global.itely: better docs for \header.
11887 * Documentation/user/putting.itely: new chapter; placeholder
11888 for future expansion.
11890 * Documentation/user/examples.itely: moved "suggestions for
11891 writing LP files" section into putting.itely.
11893 * Documentation/user/lilypond.itely: added new chapter,
11894 fixed the short table of contents.
11896 2005-05-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
11898 * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11899 infinity for unfeasible beams.
11901 * make/lilypond.fedora.spec.in (Group): idem.
11903 * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11905 * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11907 * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11910 * buildscripts/gen-emmentaler-scripts.py (i): idem.
11912 * mf/GNUmakefile: remove all CFF rules.
11914 * scm/framework-ps.scm (ps-embed-cff): reinstate.
11916 * lily/open-type-font-scheme.cc (LY_DEFINE):
11917 new function ly:otf-font-table-data.
11918 (LY_DEFINE): new function otf-font?
11920 2005-05-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
11922 * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11923 ($(outdir)/Fontmap.lily): idem.
11925 * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11926 for PFAEmmentaler-XXX.pfa.
11928 * Documentation/user/music-glossary.tely (accidental): NL
11929 translation of accidental.
11931 2005-05-02 Jan Nieuwenhuizen <janneke@gnu.org>
11933 * flower/include/international.hh: Bugfix: include "string.hh".
11935 * lily/include/mingw-compatibility.hh: New file.
11937 * flower/include/libc-extension.hh (memrev): Rename from strrev.
11939 * configure.in: Search for mingw wcrtomb library.
11941 2005-05-02 Mats Bengtsson <mabe@s3.kth.se>
11943 * scripts/convert-ly.py: Bug fix
11945 * Documentation/user/changing-defaults.itely (Common tweaks):
11946 Added example where the context has to be specified explicitly
11949 2005-05-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
11951 * scripts/lilypond-book.py (ly_options): set timing to #f for
11954 * scripts/convert-ly.py (conv): typo.
11956 * flower/*.cc: remove <? and >?
11958 * lily/*.cc: remove <? and >?
11960 * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11961 that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11964 2005-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
11966 * lily/part-combine-engraver.cc: add space to variable list.
11968 2005-04-30 Graham Percival <gperlist@shaw.ca>
11970 * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11971 remove-first to false (matches docs)
11973 * Documentation/user/advanced-notation.itely: corrected docs
11974 concerning remove-first.
11976 2005-04-29 Mats Bengtsson <mabe@s3.kth.se>
11978 * lily/part-combine-engraver.cc: make sure that the relevant
11979 properties are included in the documentation.
11981 2005-04-28 Graham Percival <gperlist@shaw.ca>
11983 * Documentation/user/lilypond-book.itely: Bernard's docs
11984 for \betweenLilyPondSystem.
11986 2005-04-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
11988 * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11991 2005-04-28 Pal Benko <benkop@freestart.hu>
11993 * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11994 only on vertical lines of flexa shape, and use a constant
11995 thickness value for horizontal lines (patch slightly modified by
11998 * lily/include/mensural-ligature.hh: make 2 comments clearer
12000 2005-04-28 Jürgen Reuter <reuter@ipd.uka.de>
12002 * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
12003 to need_extra_horizontal_space; bugfix: use class scope to avoid
12004 global namespace pollution
12006 * Documentation/user/instrument-notation.itely (ligatures): added
12007 comment on possible future syntax change and how to work around
12009 * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
12010 (epiphonus, cephalicus): fine-tune shape of plica head for narrow
12011 intervals (fixes agnus dei example)
12013 * Documentation/user/instrument-notation.itely (white mensural
12014 ligatures): selected a more illustrative example
12016 2005-04-28 Heikki Junes <hjunes@cc.hut.fi>
12018 * Documentation/index.html.in: specify utf-8 charset in meta content.
12020 2005-04-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
12022 * python/lilylib.py (make_ps_images): bugfixes; GS can produce
12023 empty 2nd page for single page.
12025 * scm/lily.scm: remove p&c definitions.
12027 * po/zh_TW.po (Module): new translation.
12029 * lily/lily-guile.cc (ly_chain_assoc): remove.
12031 * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
12032 (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
12034 2005-04-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
12036 * lily/beaming-info.cc: remove infinity_i
12038 * scripts/abc2ly.py (out_filename): fix thinko with \version.
12040 2005-04-26 Graham Percival <gperlist@shaw.ca>
12042 * Documentation/user/basic-notation.itely,
12043 instrument-notation.itely, advanced-notation.itely,
12044 changing-defaults.itely: minor fixes. Added docs
12045 for colors to advanced-notation.itely.
12047 * Documentation/user/advanced-notation.itely: fixed compile
12048 problem and added Bernard's x11-color doc patch.
12050 2005-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
12052 * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
12053 alright this time round.
12055 2005-04-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
12057 * Documentation/topdocs/INSTALL.texi (Top): idem.
12059 * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
12061 * VERSION (MAJOR_VERSION): release 2.5.21
12063 * scm/output-ps.scm (grob-cause): bugfix.
12065 2005-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
12067 * cygwin/*: Update.
12069 * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
12072 * scm/output-ps.scm (grob-cause): Bugfix.
12074 * scm/lily.scm (ly:load): Remove x11-color.
12076 * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
12077 quote executable, fixes getting version from program --with
12079 (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
12082 * Documentation/user/GNUmakefile: Only build music-glossary with
12083 rendered lilypond snippets during web.
12085 2005-04-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
12087 * po/de.po: update.
12089 * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
12091 2005-04-22 Laura Conrad <lconrad@laymusic.org>
12094 second title line append with punctuation dash character;
12095 encode abc2ly python strings in utf-8
12097 2005-04-21 Laura Conrad <lconrad@laymusic.org>
12099 * scripts/abc2ly fix chords (again)
12101 2005-04-22 Bernard Hurley <bernard@fong-hurley.org.uk>
12103 * scm/x11-color.scm: new file
12104 All x11 color names can be accessed with:
12105 #(x11-color 'ColorName),
12106 #(x11-color "ColorName") or:
12107 #(x11-color "color name")
12108 If the x11 color name is not recognised then it defaults
12111 * scm/lily.scm: amended to call scm/x11-color.scm
12113 2005-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
12115 * Documentation/user/invoking.itely (Reporting bugs): comment out
12116 reference to online PNG bug repository.
12118 2005-04-21 Jan Nieuwenhuizen <janneke@gnu.org>
12120 * lily/translator-scheme.cc (ly:translator-property): Remove.
12123 * lily/context-scheme.cc (ly:context-now): Move from translator.
12126 2005-04-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
12128 * input/regression/grid-lines.ly (skips): refine example.
12130 * scm/define-context-properties.scm
12131 (all-user-translation-properties): doc autoBeamCheck
12133 * input/regression/grid-lines.ly (Module): new file.
12135 * lily/grid-point-engraver.cc (Module): new file.
12137 * lily/grid-line.cc (Module): new file.
12139 * lily/grid-line-span-engraver.cc (Module): new file.
12141 * lily/grid-line-interface.cc (Module): new file.
12143 2005-04-21 Jan Nieuwenhuizen <janneke@gnu.org>
12145 * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
12146 missing parameter, actualy cdr through list. Actually return a
12147 list with ENTRY removed (was '()).
12149 * scripts/convert-ly.py: Update. Print warning if file cannot be
12151 (do_conversion): Fix printing of continuation comma.
12153 * Documentation/user/advanced-notation.itely (Beam formatting):
12154 Remove refbugs about compound time and mixed duration.
12156 * scm/auto-beam.scm (default-auto-beam-settings): Write out all
12157 modulo moments explicitely.
12159 * lily/moment.cc (operator %): New function.
12161 * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
12163 * lily/translator-scheme.cc (ly:translator-now,
12164 ly:translator-property): New function.
12166 * scm/auto-beam.scm (default-auto-beam-check): New function.
12168 * lily/auto-beam-engraver.cc (test_moment): Use it.
12170 * flower/rational.cc (operator %): Bugfix.
12172 2005-04-21 Erik Sandberg <ersa9195@student.uu.se>
12174 * scripts/abc2ly: Bugfix
12176 2005-04-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
12178 * python/fontextract.py (write_extracted_fonts): bugfix, too many
12179 %'s on EndFont comment.
12181 * lily/ledger-line-spanner.cc: some more words of explanation.
12183 2005-04-20 John Williams <williams@tni.com>
12185 * scripts/lilypond-book.py: htmlquote bugfix.
12186 Allow snippets to be given distinct filenames.
12187 Allow the default alt text to be overridden.
12189 2005-04-20 Erik Sandberg <ersa9195@student.uu.se>
12191 * ly/performer-init.ly: Bugfix
12193 * THANKS: Added bughunters.
12195 2005-04-20 Jan Nieuwenhuizen <janneke@gnu.org>
12197 * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
12199 * lily/auto-beam-engraver.cc (test_moment): Test exact measure
12200 position (was: use modulo measure length).
12202 * configure.in (no gui_b): Remove optional gtk+ requirement.
12204 2005-04-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
12206 * Documentation/user/basic-notation.itely (Pitches): add
12209 * lily/dynamic-engraver.cc (process_music): set right bound to
12210 script if present. Else, do not set.
12211 (acknowledge_grob): only set right bound of finished spanner to
12212 note column if no other bound is set.
12214 * python/lilylib.py (make_ps_images): switch back to png16m.
12216 2005-04-19 Jan Nieuwenhuizen <janneke@gnu.org>
12218 * scripts/lilypond-book.py (write_if_updated): Bugfix for not
12219 writing up to date file. Add dvips usage suggestion.
12221 * scripts/convert-ly.py: Fix error message.
12222 Print usage if no files on command line.
12223 (usage): Add example usage.
12225 * input/test/compound-time.ly: New file.
12227 * input/test/circle.ly: New file.
12229 * Documentation/topdocs/NEWS.tely: Use them.
12231 * input/test/boxed-stencil.ly: Remove \score.
12233 * buildscripts/mf-to-table.py (base): Add .log dependency.
12235 * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
12236 pfa's. Add .log dependency
12238 * scm/define-markup-commands.scm (lower): New command.
12240 * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
12243 2005-04-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
12245 * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
12246 also to finished cresc as right bound. This fixes:
12247 skip-string-decresc.ly
12249 * lily/slur-scoring.cc (get_bound_info): robustness: substitute
12250 relative_coordinate if extent is empty.
12252 * lily/stem.cc (width_callback): determine correct extent if flag
12253 is not there. This fixes slur-no-flag.ly
12255 * lily/grace-engraver.cc (consider_change_grace_settings): new
12257 (initialize): also consider_change_grace_settings() on
12258 initialization. Fixes large grace notes at start of score.
12260 * lily/break-align-interface.cc (do_alignment): don't translate if
12261 total_extent is empty.
12263 * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
12265 2005-04-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
12267 * scm/output-ps.scm (grob-cause): don't add cwd if path starts
12270 2005-04-18 Jan Nieuwenhuizen <janneke@gnu.org>
12272 * stepmake/aclocal.m4: Remove tfm_path.
12274 2005-04-18 Nicolas Sceaux <nicolas.sceaux@free.fr>
12276 * scm/music-functions.scm (markup-expression->make-markup): fix
12277 bug with cons arguments of markup commands.
12278 (music->make-music): fix music expression property list building
12280 2005-04-18 Jan Nieuwenhuizen <janneke@gnu.org>
12282 * aclocal.m4: Massage package names.
12286 2005-04-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
12288 * VERSION (PACKAGE_NAME): release 2.5.20
12290 * lily/stem.cc (calc_stem_info): add minimum Y extent of
12291 stem-tremolo. Fixes: bugs/tremolo-stem-length-beamed
12293 * lily/percent-repeat-engraver.cc (try_music): add measure before
12294 next_moment to future processing moment. Fixes:
12295 percent-repeat-mm-rest.ly
12296 (process_music): don't add moment for 2nd time.
12298 * input/regression/repeat-percent.ly: add mmrests as extra test.
12300 * lily/axis-group-engraver.cc (acknowledge_grob): read
12301 keepAliveInterfaces to decide what to kill.
12303 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
12304 percent-repeat-interface to keepAliveInterfaces. This fixes
12305 percent-repeat-harakiri.
12307 2005-04-17 Jan Nieuwenhuizen <janneke@gnu.org>
12311 2005-04-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
12313 * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
12315 * aclocal.m4: remove --enable-tfm-path configure option
12317 * input/test/ancient-font.ly (lowerStaff): clef name errors.
12319 * scm/backend-library.scm (postscript->png): newline after
12322 * lily/paper-score-scheme.cc (LY_DEFINE): new file.
12323 (LY_DEFINE): ly:paper-score-paper-systems: new function
12325 * lily/score-scheme.cc (LY_DEFINE): require music argument.
12327 * lily/score.cc (default_rendering): use Music_output too.
12329 * input/test/chord-names-languages.ly (Module): rename file.
12331 * lily/text-spanner.cc: add bound-padding.
12333 * lily/paper-book.cc (systems): accept Paper_score
12334 iso. Paper_system vector.
12336 * input/regression/line-arrows.ly: new file.
12338 * lily/paper-score.cc (process): run get_paper_systems() only once.
12340 * lily/line-spanner.cc (line_stencil): add arrows.
12342 2005-04-18 Jonatan Liljedahl <lijon@kymatica.com>
12344 * lily/line-interface.cc (make_arrow): new function.
12347 2005-04-18 Mathieu Giraud <magiraud@free.fr>
12349 * input/test/chord-names-german.ly: update for italian/french
12352 * Documentation/user/instrument-notation.itely (Printing chord
12355 2005-04-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
12357 * lily/include/paper-score.hh (class Paper_score): remove unused
12360 * lily/book.cc (process): add -COUNT to midi output.
12362 * lily/score.cc (book_rendering): remove outname argument
12363 (book_rendering): return list of Music_outputs.
12365 * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
12367 * lily/book.cc (process): loop over Music_outputs returned from
12368 Score::book_rendering().
12370 * lily/*.cc (width_callback): remove spurious "unused" warnings
12371 for assert (axis==[XY]_AXIS);
12373 * lily/include/music-output.hh (class Music_output): smobify class.
12375 * lily/include/paper-score.hh (class Paper_score): make members
12378 * lily/performance.cc (process): return #f iso. #<undefined>. This
12379 prevents #<undefined> leaking into GUILE-userspace.
12381 2005-04-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
12383 * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
12385 2005-04-17 Mathieu Giraud <magiraud@free.fr>
12387 * scm/chord-name.scm : support for italian and french
12390 * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
12391 a space defined by chordPrefixSpacer when the root name is
12392 direclty followed by a prefix.
12394 * ly/engraver-init.ly : chordPrefixSpacer
12395 * scm/define-context-properties.scm : chordPrefixSpacer
12396 * ly/property-init.ly : italianChords, frenchChords
12398 2005-04-17 Jan Nieuwenhuizen <janneke@gnu.org>
12400 * mf/feta-din.mf: Remove.
12402 * mf/GNUmakefile (fontdir): Bugfix.
12404 * mf/SConstruct: Some updates.
12406 * SConstruct: Require pkg-config.
12407 (test_program): Bugfix for double digit version compares, use
12408 integer (not string-) compare.
12409 Optionally require gs 8.14.
12411 * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
12413 * lily/*: s/ifdef HAVE_*/if have/.
12415 * SConstruct (test_lib): New function. Update pkg-config and some
12416 other requirements.
12418 * configure.in: Require pkg-config. Enforce REQUIRE and version for
12419 freetype, pangof2t.
12421 2005-04-16 Jan Nieuwenhuizen <janneke@gnu.org>
12423 * po/lilypond.pot, ...: Update using bison-CVS.
12425 * python/lilylib.py (make_ps_images): Fixo.
12427 2005-04-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
12429 * python/lilylib.py (make_ps_images): typo.
12431 * configure.in (gui_b): make bison optional.
12433 * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
12435 2005-04-16 Bernard Hurley <bernard@fong-hurley.org.uk>
12437 * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
12438 with one parameter can be defined in a LaTeX file when processed
12439 by lilypond-book this will be evaluated between the systems of
12440 a multi-system score. The parameter is the number of systems processed.
12442 2005-04-16 Jan Nieuwenhuizen <janneke@gnu.org>
12444 * python/lilylib.py (make_ps_images): Escape newline.
12446 * Documentation/user/music-glossary.tely: Run
12447 texinfo-all-menus-update.
12449 2005-04-14 Jan Nieuwenhuizen <janneke@gnu.org>
12451 * scm/lily-library.scm (old-relative-not-used-message)
12452 (version-not-seen-message): Add input-file-name-location to message.
12454 * lily/parser.yy (lilypond): Add token aliases.
12456 * Documentation/user/music-glossary.tely (accidental): Fixes. Do
12457 not confuse with alteration.
12460 2005-04-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
12462 * python/lilylib.py (make_ps_images): use -dEPSCrop
12464 * VERSION (PACKAGE_NAME): release 2.5.19
12466 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
12467 only put xrefs in info documentation.
12469 * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
12470 .pdf rule to tex-rules.make.
12472 * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
12473 from -systems.* output.
12475 * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
12476 directly, remove -$(PAGESIZE) target.
12478 * input/test/embedded-postscript.ly: update.
12480 2005-04-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
12482 * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
12484 * Documentation/user/changing-defaults.itely (Font selection):
12485 document font-name.
12487 * input/regression/font-name.ly: show Pango fonts for
12488 font-name. Update example.
12490 * lily/pango-select.cc (properties_to_pango_description): don't
12491 convert symbol font-size to number, but use to lookup.
12493 * python/fontextract.py (write_extracted_fonts): add VMusage 0.
12495 * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
12496 (NAME . FILE-NAME) tuples for font descriptions.
12497 (write-preamble): display BeginFont DSC comments.
12499 * python/fontextract.py (write_extracted_fonts): new file. Extract
12500 font resources from a PS file.
12502 * scripts/lilypond-book.py (option_definitions): --psfonts option.
12503 (Compile_error.process_include): do_file returns chunks.
12505 * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
12507 * make/lysdoc-targets.make: .texi is .PRECIOUS
12509 * scripts/lilypond-book.py (write_if_updated): new function.
12511 2005-04-13 Jan Nieuwenhuizen <janneke@gnu.org>
12513 * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
12515 2005-04-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
12517 * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
12519 * input/regression/markup-syntax.ly: remove \score.
12521 * scm/define-markup-commands.scm (draw-circle): add fill argument
12523 * scm/stencil.scm (make-circle-stencil): add fill argument
12525 * ps/music-drawing-routines.ps: add fill argument.
12527 * ly/performer-init.ly: add CueVoice to MIDI too.
12529 * ps/music-drawing-routines.ps: new routine BeginEPSF /
12532 * input/regression/markup-eps.ly: new file.
12534 * scm/framework-ps.scm (write-preamble): change order: vars should
12535 be inited before procedures.
12537 * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
12540 * scm/define-markup-commands.scm (epsfile): add epsfile command.
12542 2005-04-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
12544 * configure.in (gui_b): add check for ghostscript 8.15
12546 2005-04-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
12548 * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
12549 start of line. Fixes cresc-after-newline.ly
12551 * lily/source-file.cc (file_line_column_string): use get_column().
12553 2005-04-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
12555 * lily/source-file.cc (get_column): utf-8 support for column numbers.
12557 2005-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
12559 * lily/*: use message () iso progress_indication () for messages.
12560 Revise/uniformise user messages.
12562 * flower/warn.cc (progress_indication): New function.
12563 (message): Use it. Fixes newline problems.
12565 * config.make.in (webdir): Sort out install dirs.
12567 * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
12569 * python/lilylib.py (command_name): Bugfix.
12572 2005-04-11 Pedro Kroger <kroeger@pedrokroeger.net>
12574 * lily/main.cc: --help says what types of backends are availabe
12576 2005-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
12578 Fix ./VERSION dependency, and without need to reconfigure.
12580 * lily/main.cc (setup_paths): Update.
12582 * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
12584 * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
12586 * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
12587 Add \line for some simplistic cases.
12589 * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
12591 2005-04-10 Nicolas Sceaux <nicolas.sceaux@free.fr>
12593 * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
12594 to compile LY files (useful for adding eg. "-I" args)
12595 (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
12596 2Gnome command for gnome backend.
12597 (LilyPond-command-formatgnome): call the 2Gnome command. key
12600 2005-04-10 Jan Nieuwenhuizen <janneke@gnu.org>
12602 * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
12603 depend on all PNG images.
12605 2005-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
12607 * GNUmakefile.in: Bugfix: also link .map files.
12609 2005-04-09 Nicolas Sceaux <nicolas.sceaux@free.fr>
12611 * scm/music-functions.scm (music->make-music): generate
12612 a (make-music ...) sexpr from a music expression.
12613 (display-scheme-music): use guile pretty printer to display the
12616 2005-04-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
12618 * ly/engraver-init.ly: reindent.
12621 * scm/music-functions.scm (music-pretty-string): handle moments
12623 (music-pretty-string): only print non-empty lists.
12624 (cue-substitute): create CueVoice context, which has smaller type.
12626 * lily/moment-scheme.cc (LY_DEFINE): new methods
12627 ly:moment-grace-{numerator,denominator}
12629 * lily/context-handle.cc: remove quit() method.
12631 * lily/font-config.cc (init_fontconfig): be verbose about font path.
12632 (init_fontconfig): success is 0, not !0
12634 2005-04-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
12636 * mf/feta-nummer-code.mf (code): add plus glyph.
12638 * lily/tie.cc (print): idem.
12640 * lily/slur.cc (print): don't use thickness property for
12641 slur shape-thickness.
12643 * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
12644 while adding stencils.
12646 * scm/define-markup-commands.scm (with-color): with-color markup
12648 (whiteout): new markup command
12649 (filled-box): new markup command
12651 2005-04-07 Jan Nieuwenhuizen <janneke@gnu.org>
12653 * Documentation/topdocs/NEWS.tely (Top): Make tex-able. Handy
12656 * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12657 PFAAybabtu-Regular. Fixes feta font in PDFs.
12659 Notes for tetex-3.0 make web:
12660 psclean.map: s/uhv8a/uhvr8a/
12666 2005-04-06 Nicolas Sceaux <nicolas.sceaux@free.fr>
12668 * scm/music-functions.scm (music-pretty-string): fix bug with
12671 2005-04-06 Jan Nieuwenhuizen <jan.nieuwenhuizen@aspiratie.nl>
12673 * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12675 2005-04-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
12677 * scripts/lilypond-book.py (Lilypond_snippet.__init__):
12678 only process options if they're there.
12679 (write_file_map): add version-seen? to snippet-map.ly
12681 2005-04-06 Jan Nieuwenhuizen <jan.nieuwenhuizen@aspiratie.nl>
12683 * scripts/lilypond-book.py (split_options): Bugfix. Small code
12684 formatting cleanups.
12686 * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12687 Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12689 2005-04-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
12691 * scm/framework-ps.scm (ps-font-command): don't hash, just use
12694 * lily/main.cc (setup_paths): either add mf/out to search path or
12695 fonts/{otf,type1,etc}
12697 * lily/font-config.cc (init_fontconfig): either add mf/out to
12698 FontConfig or fonts/{otf,type1,etc}
12700 * GNUmakefile.in: don't put mf/ link in share/ dir.
12702 * lily/staff-spacing.cc: move same-direction-correction to
12703 note-spacing-interface
12705 * scm/lily.scm (lilypond-main): use variable argument count for
12708 * lily/font-config.cc (init_fontconfig): add operator pacification
12711 * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12713 * buildscripts/gen-emmentaler-scripts.py (i): generate
12714 PFAEmmentaler as well.
12716 * scm/framework-ps.scm (munge-lily-font-name): new function
12717 (write-preamble): hack: insert PFA equivalent of CFF into
12718 .PS. This makes LilyPond output printable on normal PS printers
12721 * buildscripts/gen-emmentaler-scripts.py (i): generate
12722 PFAEmmentaler.pfa aswell.
12724 2005-04-06 John Williams <williams@tni.com>
12726 * scripts/lilypond-book.py: refactor the compose_ly procedure.
12728 2005-04-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
12730 * scm/page-layout.scm (default-page-make-stencil): always combine
12731 the header stencil, even if empty. This prevents the body text to
12732 reach up to the margins.
12734 * po/rw.po (Module): new file, for Kinyarwanda.
12736 * input/test/spacing-optical.ly (Module): new file.
12738 * lily/staff-spacing.cc: add same-direction-correction
12740 2005-04-06 Jan Nieuwenhuizen <janneke@gnu.org>
12742 * Documentation/user/introduction.itely (Engraving): Comment-out
12745 2005-04-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
12747 * scm/define-grob-properties.scm (all-user-grob-properties): add
12748 same-direction-correction
12750 * VERSION: release 2.5.18
12752 2005-04-05 Jan Nieuwenhuizen <janneke@gnu.org>
12754 * lily/grob.cc (mark_smob): Check pscore->layout_ before
12755 dereferencing. Fixes make web.
12757 * lily/midi-stream.cc: Handle unwritable midi file. Include
12760 * Documentation/user/: Fix links.
12762 2005-04-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
12764 * lily/text-interface.cc (Module): rename from text-item.cc
12766 * input/regression/apply-output.ly (texidoc): function naming fix.
12768 * lily/time-signature-performer.cc (derived_mark): new function.
12770 * lily/lily-parser-scheme.cc: print mapped file name for progress
12772 * scripts/lilypond-book.py (find_linestarts): new function.
12773 (find_toplevel_snippets): keep track of line numbers.
12775 * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12778 * ly/declarations-init.ly (partCombineListener): use
12779 ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12781 * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12783 2005-04-04 Jan Nieuwenhuizen <janneke@gnu.org>
12785 * lily/text-item.cc: Fix link.
12787 * Documentation/user/changing-defaults.itely (Changing defaults):
12788 Fix programs reference links.
12790 * Documentation/user/music-glossary.tely: Convert to utf-8.
12792 2005-04-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
12794 * make/lilypond-vars.make: remove TEXMF from variables.
12795 remove DEB_BUILD pk font variables.
12796 remove GUILE_LOAD_PATH
12797 remove TeX memory vars.
12799 2005-04-04 Werner Lemberg <wl@gnu.org>
12801 * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12803 2005-04-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
12805 * ps/lilyponddefs.ps: remove reencode-font
12807 * lily/simple-spacer.cc (add_columns): also compare
12808 directly. Column rank doesn't distinguish between broken and
12809 unbroken columns. This fixes large spaces before time sig changes.
12811 * Documentation/user/point-and-click.itely: document ly:set-option.
12813 * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12814 point_and_click_global is set.
12816 * lily/scm-option.cc (LY_DEFINE): add point-and-click
12817 ly:set-option argument.
12819 2005-04-03 Jan Nieuwenhuizen <janneke@gnu.org>
12821 * GNUmakefile.in: Include symlinks in webball.
12823 * Documentation/user/GNUmakefile (source-links): Add symlinks to
12824 source dir for split and non-split manuals.
12826 * Documentation/user/*y: Fix @uref/@inputfile links for
12827 split/non-split HTML documents.
12829 * Documentation/user/GNUmakefile (local-WWW): Do not generate
12832 2005-04-02 Jan Nieuwenhuizen <janneke@gnu.org>
12834 * GNUmakefile.in: Add newline.
12836 2005-04-01 Erlend Aasland <erlenda@gmail.com>
12838 * tex/lilyponddefs.tex: use color instead of xcolor
12839 * scm/output-tex.scm: minor editing
12841 2005-04-02 Nicolas Sceaux <nicolas.sceaux@free.fr>
12843 * scm/music-functions.scm (display-scheme-music): pretty printer
12844 for music expressions.
12846 2005-04-02 Jan Nieuwenhuizen <janneke@gnu.org>
12848 * buildscripts/install-info-html.sh (index_file): Fix link.
12850 2005-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
12852 * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12854 * Documentation/index.html.in: Add size estimates with some big pages.
12856 * Documentation/user/tutorial.itely (Running LilyPond for the
12857 first time): Add/replace some @rglos links. TODO: add more
12858 @rglos links in tutorial, test non-intrusiveness (.css).
12860 * stepmake/bin/add-html-footer.py (do_file): Remove info's
12861 annoying's indication of referencing external document.
12863 * Documentation/user/GNUmakefile: Split version of glossary too.
12864 * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12865 links, not only for html.
12867 * Documentation/user/introduction.itely: Fix some links for other
12868 than html, do not use `here' as link name.
12870 2005-03-31 Jan Nieuwenhuizen <janneke@gnu.org>
12872 * scm/documentation-generate.scm (string-append): Fix @usermanref,
12875 2005-03-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
12877 * scm/page-layout.scm (default-page-make-stencil): only add header
12878 if existing and not empty. Fixes spurious programming error.
12880 * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12882 2005-03-31 Erlend Aasland <erlenda@gmail.com>
12884 * scm/output-tex.scm: implement {re,}setcolor
12885 * tex/lilyponddefs.tex: use color package
12887 2005-03-31 Jan Nieuwenhuizen <janneke@gnu.org>
12889 * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12890 additions to website.
12892 * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12894 * Documentation/user/macros.itexi: Fix @usermanref html links in
12895 split documents: use @inforef.
12897 2005-03-30 Graham Percival <gperlist@shaw.ca>
12899 * Documentation/user/programming-interface.itely: minor fix.
12901 * Documentation/user/advanced-notation.itely: added info to
12902 Metronome markings.
12904 2005-03-30 Jan Nieuwenhuizen <janneke@gnu.org>
12906 * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12907 use box-stencil. Remove y-padding argument.
12908 (make-stencil-circler): New function.
12910 * buildscripts/lilypond-words.py (F):
12911 * elisp/SConscript (a):
12912 * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12913 * vim/SConscript (a):
12914 * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12916 * lily/general-scheme.cc: Build fix.
12919 * input/regression/markup-scheme.ly:
12920 * input/regression/markup-syntax.ly: Drop 'new-' from name.
12922 * scm/stencil.scm (make-circle-stencil): New function.
12924 * scm/define-markup-commands.scm (draw-circle): Use it. New
12925 name (was cicle). Update callers.
12926 (circle): New markup command, similar to box.
12928 * scm/stencil.scm (circle-stencil): New function.
12930 2005-03-29 David Jedlinsky <lilypond@ipnh.com>
12932 * configure.in: Detect libutf8/wchar.h variant.
12934 * stepmake/aclocal.m4: Modify shared size test.
12936 2005-03-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
12938 * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12940 2005-03-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
12942 * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12944 * VERSION (PACKAGE_NAME): release 2.5.17
12946 2005-03-29 Jan Nieuwenhuizen <janneke@gnu.org>
12948 * scm/backend-library.scm (postscript->png): Fix comment and png
12951 * GNUmakefile.in (link-tree): Fix locales.
12953 2005-03-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
12955 * lily/stencil-scheme.cc (LY_DEFINE): change to
12956 ly:stencil-aligned-to, non mutating.
12958 * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12960 * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12962 * lily/quote-iterator.cc (derived_mark): call
12963 Music_wrapper_iterator::derived_mark() too.
12965 * lily/grace-engraver.cc (derived_mark): change signature, add
12968 2005-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
12970 * SConstruct (symlink):
12971 * GNUmakefile.in (link-tree): Add scripts to prefix.
12973 * lily/general-scheme.cc (ly:effective-prefix): New function.
12975 * scm/backend-library.scm (postscript->png): Use it.
12977 2005-03-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
12979 * lily/paper-score.cc (process): don't delete grobs after
12980 producing stencils.
12982 * scm/part-combiner.scm (determine-split-list): switch off
12985 * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12988 * scm/define-context-properties.scm
12989 (all-user-translation-properties): add stringNumberOrientations.
12991 * lily/new-fingering-engraver.cc (position_scripts): make generic,
12992 so fingering and string-numbers are separately controlled.
12994 2005-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
12996 * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12999 2005-03-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
13001 * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
13003 * config.hh.in: add HAVE_FONTCONFIG.
13005 * Documentation/user/instrument-notation.itely (String number
13006 indications): new node.
13008 * input/regression/new-markup-syntax.ly (texidoc): add circle.
13010 * lily/new-fingering-engraver.cc (add_string): new function.
13011 (acknowledge_grob): accept string-number-event as well.
13013 * scm/define-markup-commands.scm (circle): new markup command.
13015 * scm/output-lib.scm (print-circled-text-callback): new function.
13017 * lily/GNUmakefile: move ifeq after include stepmake.make.
13019 2005-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
13021 * config.make.in (HAVE_LIBKPATHSEA_SO):
13022 * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
13024 * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
13028 * debian/control: Update.
13030 2005-03-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
13032 * input/test/title-markup.ly (spaceTest): remove.
13034 * input/test/embedded-tex.ly (Module): remove.
13036 * input/test/music-box.ly: use 'name property, not ly:music-name.
13038 * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
13040 * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
13042 2005-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
13044 * Documentation/topdocs/INSTALL.texi (Top): Remove information
13045 about xdeltas. Add information about CVS.
13047 * scm/lily.scm (lilypond-main): Fix invocation of handler,
13048 gracefully handle failed files.
13050 * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
13052 * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
13055 * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
13056 No unnecessarily specific i18n messages. Remove stray `1'.
13058 2005-03-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
13060 * buildscripts/lys-to-tely.py (strip_extension): add utf-8
13063 * scm/documentation-lib.scm (texi-file-head): set utf-8
13066 * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
13067 Delta, not the Symbol one.
13069 * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
13072 * Documentation/topdocs/INSTALL.texi (Top): add running
13073 requirement as compilation requirement.
13075 2005-03-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
13077 * buildscripts/mutopia-index.py (headertext): add h1 header and
13078 utf-8 charset meta field.
13080 * input/GNUmakefile: prune example list.
13082 * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
13085 * lily/slur-scoring.cc (get_base_attachments): only look at stem
13086 extent for visible stems.
13088 * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
13090 2005-03-27 Jan Nieuwenhuizen <janneke@gnu.org>
13092 * Documentation/topdocs/INSTALL.texi (Top): Updates.
13094 * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
13096 2005-03-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
13098 * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
13099 pass inf/nan into slur scoring.
13101 * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
13104 * scripts/abc2ly.py (dump_voices): use alphabet().
13106 2005-03-27 Jeff Smith <whydoubt@yahoo.com>
13108 * mf/GNUmakefile (depth): use $(FONTFORGE).
13110 2005-03-27 Matthias Neeracher <neeracher@mac.com>
13112 * flower/include/virtual-methods.hh: simplify. Patch by
13114 2005-03-25 John Williams <williams@tni.com>
13116 * scripts/lilypond-book.py (main): add png for HTML too, guess
13119 2005-03-25 Graham Percival <gperlist@shaw.ca>
13121 * Documentation/topdocs/INSTALL.texi: now recommends
13122 lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
13124 * Documentation/user/basic-notation.itely,
13125 Documentation/user/tutoria.itely: warn about
13126 only one (phrasing) slur at once.
13128 2005-03-24 Pedro Kroger <kroeger@pedrokroeger.net>
13130 * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
13132 2005-03-23 Graham Percival <gperlist@shaw.ca>
13134 * Documentation/user/basic-notation.itely: fixed info about
13135 ending a (de)cresc.
13137 * Documentation/user/lilypond-book.itely: fixed
13138 lilypond-book filter example and warned about not doing
13139 --filter and --process at the same time.
13141 2005-03-23 Mats Bengtsson <mabe@s3.kth.se>
13143 * lily/parser.yy (bass_number),
13144 Documentation/user/instrument-notation.itely (Figured bass):
13145 Add the possibility to use text markup in figured bass.
13147 2005-03-19 Graham Percival <gperlist@shaw.ca>
13149 * Documentation/user/global.itely: added info about naming
13150 identifiers and breakbefore.
13152 * Documentation/user/invoking.itely: added info about batch
13153 processing files with convert-ly, removed references to TeX
13154 in the jail section.
13156 * Documentation/user/examples.itely: possibly fixed piano
13159 * Documentation/user/advanced-notation.itely: added info
13160 about removing other types of Staff.
13162 * Documentation/user/instrument-notation.itely: possibly
13163 fixed piano staff line switch.
13165 * Documentation/user/changing-defaults.itely: added info
13166 about using normal font in titles.
13168 2005-03-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
13170 * VERSION (PATCH_LEVEL): release 2.5.16
13172 * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
13175 2005-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
13177 * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
13180 * python/lilylib.py (make_ps_images):
13181 * scm/backend-library.scm (postscript->pdf, postscript->png):
13182 Quote file name. Use format rather than string-append juggling.
13184 2005-03-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
13186 * python/lilylib.py (make_ps_images): add x to -g argument.
13188 * lily/key-performer.cc (create_audio_elements): don't use
13189 scm_eval_string. Check for minor 3rd directly.
13191 * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
13192 (sarabandeCelloGlobal): key is D minor, not F major.
13194 2005-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
13196 Fix truncated --png output (Peter Danenberg).
13198 * python/lilylib.py (make_ps_images):
13199 * scripts/ps2png.py (copyright): Grok --papersize option.
13201 * scm/backend-library.scm (postscript->png): Add parameter
13202 PAPERSIZE. Update callers.
13204 * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
13205 Fixes symbol placement.
13208 * lily/stencil.cc: Use "libc-extension.hh" (WAS:
13209 <libc-extension.hh>).
13211 2005-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
13215 * buildscripts/fixcc.py: Update.
13217 Builddir run fixes.
13219 * HACKING (datadir): Add VERSION.
13221 * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
13224 2005-03-15 Werner Lemberg <wl@gnu.org>
13226 * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
13227 diagonal stem doesn't become thinner.
13229 2005-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
13231 * buildscripts/fixcc.py: Fixes (Werner).
13233 2005-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
13235 * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
13236 Emmentaler/Aybabtu.
13238 * GNUmakefile.in: fix lilypond-words path.
13240 * po/tr.po: update to 2.3.21
13242 * lily/new-fingering-engraver.cc (position_scripts): take priority
13243 from head position.
13245 * input/regression/finger-chords-order.ly (texidoc): new file.
13247 2005-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
13249 * make/ly-rules.make:
13250 * stepmake/aclocal.m4:
13251 * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
13253 * buildscripts/fixcc.py (rules): Leave space after operator.
13255 2005-03-14 Werner Lemberg <wl@gnu.org>
13257 * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
13258 top of the glyph with smooth curve.
13260 2005-03-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
13262 * Documentation/user/global.itely (Page layout): remove
13265 2005-03-13 Jürgen Reuter <reuter@ipd.uka.de>
13267 * input/regression/mensural-ligatures.ly: new file (with examples
13268 compiled by Pal Benko).
13270 * Documentation/user/instrument-notation.itely: Bugfix: yet some
13271 other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
13272 musicglyph access. Many small beautifications in ancient
13275 * input/test/divisiones.ly: fixed indentation; small
13278 * ly/engraver-init.ly: added FIXME comment
13280 * scripts/lilypond-book.py,
13281 Documentation/user/lilypond-book.itely: added music fragment
13282 option "packed" to lilypond-book
13284 * Documentation/user/instrument-notation.itely: Bugfix: added
13285 missing LedgerLineSpanner color setting in several places. Added
13286 music fragment option "packed" to VaticanaContext example.
13288 2005-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
13290 * scm/define-grobs.scm (all-grob-descriptions): switch off
13291 Hyphen_spanner::set_spacing_rods
13293 * lily/lyric-hyphen.cc (print): add padding between syllable and
13295 (print): shorten hyphen in tight situations (determine using
13298 * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
13301 2005-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
13303 * ly/titling-init.ly (bookTitleMarkup): Refinements.
13305 * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
13306 header/footer markings for regression-test.
13308 * scm/backend-library.scm (output-scopes, header-to-file): Move
13309 from framework-tex.scm.
13311 * scm/framework-ps.scm (output-framework)
13312 (output-preview-framework):
13313 * scm/framework-eps.scm (output-classic-framework)
13314 (output-framework): Use it. Fixes collated files.
13316 2005-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
13318 * input/sakura-sakura.ly:
13319 * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
13321 * buildscripts/guile-gnome.sh: Update.
13323 * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
13325 * mf/aybabtu.pe.in: Capitalize Aybabtu.
13327 2005-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
13329 * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
13330 culprit: always exit the loop if we find a rod, even if it has
13333 * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
13336 * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13337 $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
13339 * scm/output-svg.scm (dashed-line): new function body.
13341 * GNUmakefile.in: create .htaccess.
13343 2005-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
13345 * Documentation/topdocs/NEWS.tely (Top): Fix text example.
13347 2005-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
13349 * VERSION (PACKAGE_NAME): release 2.5.15
13351 * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
13353 * scm/framework-svg.scm (output-framework): put scaling in
13354 document header. Apply scaling only once.
13355 (output-framework): dump page size in px, not mm.
13357 * scm/lily-library.scm (modified-font-metric-font-scaling): rename
13360 * lily/paper-outputter-scheme.cc (LY_DEFINE):
13361 ly:outputter-output-scheme, new function.
13363 * scm/output-svg.scm (pango-description-to-svg-font): new function
13365 2005-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
13367 * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
13370 * input/typography-demo.ly: new file.
13372 2005-03-10 Jan Nieuwenhuizen <janneke@gnu.org>
13374 * Documentation/user/global.itely (File structure): Add markup blocks
13375 to toplevel expressions.
13376 (Multiple movements, Creating titles): Add markup blocks.
13378 * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
13379 <libc-extension.hh>).
13381 * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
13385 * kpath-guile: Nitpick run: buildscripts/fixcc.py.
13387 2005-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
13389 * lily/accidental.cc: special bboxes for natural.
13391 * mf/feta-toevallig.mf: make stems heavier.
13393 * lily/dynamic-text-spanner.cc (print): add bound padding for edge
13396 * mf/feta-klef.mf: revise.
13398 * mf/feta-schrift.mf: make thinning of accent less pronounced.
13400 * mf/feta-klef.mf: add rounded curve at top.
13401 make thinnib a little heavier.
13403 2005-03-10 Jan Nieuwenhuizen <janneke@gnu.org>
13405 * lily/parser.yy (book_body): Oops, allow \markup in \book too.
13407 * buildscripts/fixcc.py: New file.
13409 * input/regression/utf8.ly: Update Debian font description.
13411 2005-03-09 Jan Nieuwenhuizen <janneke@gnu.org>
13413 * stepmake/aclocal.m4: Fix test.
13415 2005-03-09 Graham Percival <gperlist@shaw.ca>
13417 * Documentation/user/invoking.itely: added Sebastino Vigna's
13418 docs for the --jail option.
13420 2005-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
13422 * lily/stem.cc (print): only produce stemlets if there are no
13423 noteheads on this stem.
13425 * lily/note-spacing.cc (stem_dir_correction): robustness fix:
13426 don't crash on stemlet (visible stem without heads).
13428 * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
13429 unbroken situations.
13431 * scm/output-lib.scm (center-invisible): new function.
13433 * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
13434 wishes to determine loose column space.
13436 * lily/font-config.cc (init_fontconfig): add
13437 fonts/{otf,type1,cff} to path.
13439 * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
13441 * mf/GNUmakefile (Module): install all fonts under otf/
13443 * scm/framework-ps.scm (Module): read fonts from fonts/extension,
13444 replace /fonts/otf/ by /ps/
13447 2005-03-09 Jan Nieuwenhuizen <janneke@gnu.org>
13449 * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
13451 * lily/book.cc (process): Oops, add score_.header_.
13453 * lily/paper-book.cc: Fold hearders, score and texts into scores_.
13455 * lily/parser.yy: Handle toplevel and book texts as score.
13457 * scm/page-layout.scm (default-page-make-stencil):
13458 Bugfix: (page-properties rename.
13460 * scm/backend-library.scm (ly:system): Typo.
13462 2005-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
13464 * stepmake/stepmake/executable-targets.make (installexe): don't
13465 strip installed executables
13467 * lily/font-select.cc (get_font_by_design_size): revert
13468 pango_description_string as well.
13470 * lily/system.cc (set_loose_columns): put loose column just left
13473 * lily/include/group-interface.hh (extract_grob_array): rename
13474 from Pointer_group_interface__extract_grobs
13476 * input/regression/ledger-line-minimum.ly (texidoc): new file.
13478 * lily/ledger-line-spanner.cc (set_spacing_rods): new
13479 function. Keep ledgered note heads at a minimum distance.
13480 Introduce minimum-length-fraction
13481 (print): introduce length-fraction property.
13483 2005-03-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
13485 * tex/GNUmakefile: remove latin1.enc rules.
13487 2005-03-08 Jan Nieuwenhuizen <janneke@gnu.org>
13489 * scm/titling.scm: Typo.
13491 * input/regression/score-text.ly: Really add.
13493 * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
13495 2005-03-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
13497 * lily/open-type-font-scheme.cc: new file.
13499 2005-03-08 Jan Nieuwenhuizen <janneke@gnu.org>
13501 * scm/titling.scm (layout-extract-page-properties): Rename from
13502 page-properties. Update callers.
13504 * lily/lexer.ll (Lily_lexer):
13505 * lily/parser.yy: Junk lyric_markup state.
13507 * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
13509 * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
13510 Add texts parameter.
13512 2005-03-07 Jan Nieuwenhuizen <janneke@gnu.org>
13514 * lily/lexer.ll (lyric_markup): New mode.
13515 (Lily_lexer::push_lyric_markup_state): New method.
13516 (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
13518 * lily/parser.yy (book_body):
13519 (toplevel_expression): Grok \markup texts.
13521 * lily/score-scheme.cc (ly:music-scorify):
13522 * scm/lily-library.scm (collect-music-for-book): Take texts
13525 * lily/score.cc (texts_): New member.
13527 * lily/paper-book.cc (systems): Format score texts.
13529 * score-text.ly: New file.
13531 * ttftool/SConscript:
13532 * kpath-guile/SConscript: New file.
13535 * SConstruct: Update.
13537 2005-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
13539 * VERSION (PACKAGE_NAME): release 2.5.14
13541 2005-03-07 Jan Nieuwenhuizen <janneke@gnu.org>
13543 * lily/main.cc: Add dummy xgettext markers.
13545 2005-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
13547 * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
13550 * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
13551 executable is < 40k
13553 * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
13556 2005-03-06 Jan Nieuwenhuizen <janneke@gnu.org>
13558 * flower/libc-extension.cc:
13559 * flower/include/libc-extension.hh: [Open]BSD simply cast
13560 cookie/funopen declarations.
13562 * stepmake/aclocal.m4: Check for libkpathsea.so.
13564 * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
13567 2005-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
13569 * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
13570 (open_library): alternative for static library.
13572 2005-03-06 Jan Nieuwenhuizen <janneke@gnu.org>
13574 * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
13576 * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
13578 Drop run-time dependency on teTeX.
13580 * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
13582 * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
13583 KPATHSEA_LIBS in LIBS.
13584 (STEPMAKE_DLOPEN): New function.
13586 * lily/font-config.cc (init_fontconfig): Use dir for directory,
13589 * flower/file-path.cc (directories): Rename from paths, as this
13590 return an array of directories (a single path).
13592 2005-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
13594 * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
13596 * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
13597 new ly:kpathsea-find-file
13599 * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
13601 * kpath-guile/GNUmakefile: new file
13603 * buildscripts/gen-emmentaler-scripts.py (i): generate
13604 emmentaler-X.fontname as well.
13606 * buildscripts/ps-embed-cff.py: new script
13608 * scm/lily-library.scm: remove ps-embed-cff.
13610 * scm/framework-ps.scm (write-preamble): don't use kpathsea for
13613 * scm/font.scm (add-music-fonts): load dynamics/numbers through
13614 fontconfig as well.
13616 * lily/font-config.cc (init_fontconfig): add cff/ too.
13618 * ly/generate-embedded-cff.ly: capitalize.
13620 * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
13621 so as to register the pango font.
13623 * lily/font-config.cc (init_fontconfig): add
13624 prefix/{otf,type1,mf/out} to fontconfig path.
13626 * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
13629 * configure.in (gui_b): remove ec mftrace check
13631 * config.hh.in: use lilypond-Major.Minor as data directory.
13633 * scm/framework-ps.scm (dump-page): use output-units for landscape.
13635 * buildscripts/gen-emmentaler-scripts.py (i): lower case file
13638 2005-03-06 Jan Nieuwenhuizen <janneke@gnu.org>
13640 * lily/main.cc (do_chroot_jail): Small cleanups. Avoid constant
13643 * flower/libc-extension.cc:
13644 * flower/include/libc-extension.hh: [Open]BSD fixes for
13645 cookie/funopen declarations.
13647 2005-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
13649 * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13652 * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13655 * scm/define-markup-commands.scm (fontsize): new markup
13656 command. Also set baseline-skip
13658 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13660 * lily/main.cc (do_chroot_jail): paranoia security for webserver
13663 2005-03-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
13665 * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13667 * lily/pdf.cc: remove PDF related files
13669 2005-03-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
13671 * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13674 2005-03-05 Graham Percival <gperlist@shaw.ca>
13676 * Documentation/user/advanced-notation.itely: first draft
13679 * Documentation/user/global.itely: fixed (sub)section
13682 2005-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
13684 * cygwin/mknetrel (extras): Bufix (Bertalan).
13686 * Documentation/user/basic-notation.itely (Chords): @ref fix.
13687 * Documentation/user/instrument-notation.itely (Introducing chord
13688 names): Compile fix: must have unique name.
13690 2005-03-02 Graham Percival <gperlist@shaw.ca>
13692 * Documentation/user/instrument-notation.itely: reorg.
13694 2005-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
13696 * scm/output-gnome.scm:
13697 * scm/output-svg.scm: Fix font scaling.
13699 2005-03-01 Jan Nieuwenhuizen <janneke@gnu.org>
13701 * ly/titling-init.ly (tagline): Use Engraving. Add comment about
13702 what link to use best.
13704 * Documentation/user/instrument-notation.itely (Ancient accidentals):
13705 * Documentation/user/tutorial.itely (Automatic and manual beams):
13708 * lily/tweak-registration.cc (replace_grob_tweak): New function.
13709 * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13710 * scm/framework-gnome.scm (tweak): Use it.
13712 2005-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
13714 * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13716 * scm/output-ps.scm (white-text): reinstate white-text
13718 2005-03-01 Jan Nieuwenhuizen <janneke@gnu.org>
13720 * scm/output-ps.scm (offset-add): Remove.
13722 * scm/lily-library.scm (offset-flip-y): New function.
13723 * scm/framework-gnome.scm (tweak): Use it.
13725 * scm/output-gnome.scm (grob-cause): Add parameter.
13727 * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13728 * scm/output-ps.scm (url-link): Move.
13729 (white-text): Warn user about brokenness.
13731 * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13734 2005-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
13736 * lily/slash-repeat-engraver.cc (try_music): always make slashes
13737 if body length smaller than measure length.
13739 * scm/define-markup-commands.scm (with-url): oops. use Y extent
13742 * ly/titling-init.ly (tagline): put default tagline in \paper
13744 2005-03-01 Jan Nieuwenhuizen <janneke@gnu.org>
13747 * lily/pdf.cc (Pdf_file): Use more generic error messages.
13749 * scm/lily-library.scm (version-not-seen-message): New function.
13750 * ly/init.ly: Use it.
13752 * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13755 * scripts/lilypond-book.py (do_process_cmd): Do not lump
13756 whitespace with l10n message.
13758 * scm/framework-tex.scm (convert-to-ps):
13759 (convert-to-dvi): Do not use overly specific l10n messages.
13761 * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13763 * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13764 merge stderr with stdout.
13766 2005-03-01 Jan Nieuwenhuizen <janneke@gnu.org>
13768 * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13771 2005-02-29 Graham Percival <gperlist@shaw.ca>
13773 * Documentation/user/instrument-notation.teily: moved
13774 \arpeggio to Basic.
13776 * Documentation/user/advanced-notation.itely: Articulation to
13777 Basic, a bunch of stuff from Basic moved to Advanced.
13779 * Documentation/user/basic.itely: swapped various sections,
13782 2005-02-28 Jan Nieuwenhuizen <janneke@gnu.org>
13784 * flower/memory-stream.cc:
13785 * flower/libc-extension.cc: Remove obsolete #undefs.
13787 * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13790 2005-02-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
13792 * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13795 * VERSION (PACKAGE_NAME): release 2.5.13
13797 * GNUmakefile.in (web-ext): don't ship ps.gz
13799 * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13802 2005-02-28 Jan Nieuwenhuizen <janneke@gnu.org>
13804 * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13805 without libintl. Now it compiles too.
13807 2005-02-28 Graham Percival <gperlist@shaw.ca>
13809 * Documentation/user/basic-notation.itely,
13810 instument-notation.itely, advanced-notation.itely:
13811 split up contents of notation.itely.
13813 * Documentation/user/notation.itely: file removed.
13815 * Documentation/user/invoking.itely, converters.itely:
13816 moved convert-ly info to invoking.itely.
13818 * Documentation/user/global.itely, changing-defaults.itely,
13819 sound-output.itexi: moved global settings, file layout, and
13820 sound into global.itely.
13822 * Documentation/user/sound-output.itexi: file removed.
13824 * Documentation/user/lilypond.tely: removed links to
13825 notation.itely and sound.itely.
13827 2005-02-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
13829 * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13831 * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13833 * THANKS: add sponsor.
13835 * scm/define-markup-commands.scm (with-url): new markup command.
13837 * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13840 * scm/output-tex.scm (url-link): stub.
13842 * scm/output-ps.scm (url-link): new function.
13844 * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13845 ly:set-point-and-click
13847 2005-02-27 Jan Nieuwenhuizen <janneke@gnu.org>
13849 * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13850 based on pdf-viewer setting.
13852 * scm/framework-ps.scm (write-preamble): Find and set preferred
13855 2005-02-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
13857 * Documentation/user/point-and-click.itely: update for PDF point &
13860 * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13861 editors based on EDITOR setting.
13863 2005-02-27 Jan Nieuwenhuizen <janneke@gnu.org>
13865 * scm/*: Oops, more grand 2005 replace bits.
13867 2005-02-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
13869 * ps/music-drawing-routines.ps: new routine: insert PDF mark
13871 * scm/output-ps.scm (grob-cause): point & click support for
13874 2005-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
13876 * lily/input-scheme.cc (LY_DEFINE): rename to
13877 ly:input-file-line-column
13879 2005-02-26 Graham Percival <gperlist@shaw.ca>
13881 * Documentation/user/examples.itely: small fix from Steve Doonan.
13883 * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13885 * THANKS: added Yuval Harel.
13887 * Documentation/user/{various}: inserted two spaces after a period.
13889 * Documentation/user/lilypond.tely: added framework for reorg.
13891 * Documentation/user/basic-notation.itely, instrument-notation.itely,
13892 advanced-notation.itely, global.itely: new files, placeholder for
13895 2005-02-26 Yuval Harel <yuvalh@hotpop.com>
13897 * Documentation/user/notation.itely: revamped Polyphony section
13899 2005-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
13901 * Documentation/user/lilypond-book.itely (Music fragment options):
13904 * Documentation/user/changing-defaults.itely (Text encoding): add
13905 fontload option to utf8 include
13907 * scripts/lilypond-book.py (compose_ly): add fontload option
13909 * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13910 force-eps-font-include option.
13912 * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13915 * Documentation/user/invoking.itely (Editor support): remove
13916 lilypond-latex section.
13918 * scripts/lilypond-latex.py (Module): remove script.
13920 * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13923 * lily/main.cc: remove -m, --no-layout
13925 * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13926 to define. We don't want to override fprintf everywhere.
13928 2005-02-26 Jan Nieuwenhuizen <janneke@gnu.org>
13930 * cygwin/lilypond.hint:
13931 * cygwin/README.in: Update dependencies.
13933 * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13934 Bugfix: do not pollute CPPFLAGS, LIBS.
13936 * cygwin/mknetrel (extras): Cross compile fixes.
13940 * ttftool/ps.c: #include libc-extension.hh
13942 * flower/include/libc-extension.hh:
13943 * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13944 wrapper using funopen.
13945 (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13946 handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13949 * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13950 (AC_CHECK_HEADERS): Add libio.h
13952 * scripts/convert-ly.py: Uniformize, internationalize.
13953 (2.5.2): Remove fatal encoding rule.
13954 (2.5.13): Handle latin1 encoding gracefully.
13956 2005-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
13958 * HACKING: Fix line breaks.
13960 2005-02-23 Werner Lemberg <wl@gnu.org>
13962 * mf/graycx.mf, mf/graylj.mf: Removed. Any decent TeX distribution
13963 contains those two files.
13965 2005-02-21 Werner Lemberg <wl@gnu.org>
13967 * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13968 to improve overlap removal process.
13970 * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13971 left and right ending. This ensures better overlapping.
13972 Update all callers.
13973 ("lineprall"): Don't use draw_gridline to get better overlapping.
13975 2005-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
13977 * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13979 * Documentation/topdocs/NEWS.tely (Top): oops.
13981 2005-02-21 Pedro Kroger <kroeger@pedrokroeger.net>
13983 * HACKING: new file.
13985 * input/regression/utf8.ly (portuguese): added a portuguese example
13986 to show latin1 accents.
13988 2005-02-21 Pal Benko <benkop@freestart.hu>
13990 * lily/mensural-ligature-engraver.cc:
13991 * lily/mensural-ligature.cc:
13992 * lily/include/mensural-ligature.hh: new algorithm implemented
13994 * scm/define-grob-properties.scm: join-left killed (add-join may
13995 be used); join-left-amount changed to join-right-amount
13997 2005-02-21 Graham Percival <gperlist@shaw.ca>
13999 * Documentation/user/notation.itely: small but urgent fix.
14001 2005-02-21 Jürgen Reuter <reuter@ipd.uka.de>
14003 * lily/duration-scheme.cc: bugfix: correct parameters to
14006 * THANKS: added Pal.
14008 * Documentation/user/notation.itely: bugfix: unTeXified
14009 $\\backslash$. Bugfix: yet another glyph renaming victim:
14010 "timesig.*x/y" -> "timesig.*xy".
14012 2005-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
14014 * VERSION (PACKAGE_NAME): release 2.5.12
14016 2005-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
14018 * ly/engraver-init.ly: set tieWaitForNote to #t by default
14020 * configure.in (gui_b): bump GUILE requirement to 1.6.5
14022 * Documentation/topdocs/NEWS.tely: add inputfileref macro.
14024 * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
14026 2005-02-20 Jan Nieuwenhuizen <janneke@gnu.org>
14028 * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
14031 * input/regression/stanza-number.ly:
14032 * input/regression/utf8.ly (hebrew): Use addlyrics. Update.
14034 * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
14036 2005-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
14038 * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
14039 NEWS. Refer to website for older news.
14041 * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
14042 .HTML. This should be done for specific servers only.
14044 * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
14045 .ly image examples.
14047 * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
14050 * scm/define-context-properties.scm
14051 (all-user-translation-properties): add tieWaitForNote
14053 * scm/define-grobs.scm (all-grob-descriptions): add
14054 Tie_column::before_line_breaking
14056 * lily/tie.cc (get_column_rank): new function
14058 * lily/tie-column.cc (before_line_breaking): new function.
14059 (werner_directions): take into account ties that start on
14062 * lily/score-engraver.cc (set_columns): move add_column() so we
14063 have column rank available.
14065 * lily/tie.cc (get_column_rank): new function.
14067 * input/regression/utf8.ly (japanese): add japanese lyrics.
14069 * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
14071 * THANKS: add Steve D
14073 * ttftool/*.c: add TTF -> Type42 conversion library. Based on
14074 Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
14076 2005-02-20 Tatsuya Ono <tats_ono@infoseek.jp>
14078 * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
14079 to show harmonic notes
14080 * scm/define-markup-commands.scm: in \markup-by-number
14081 "dots-dot" -> "dots.dot" to show dotted notes
14083 2005-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
14085 * flower/include/memory-stream.hh (class Memory_out_stream): new file.
14087 * flower/memory-stream.cc (writer): new file.
14089 * configure.in: add endian test.
14091 2005-02-19 Jürgen Reuter <reuter@ipd.uka.de>
14093 * Documentation/user/examples.itely: small
14094 simplification/beautification
14096 * Documentation/user/notation.ietly: bugfix: fixed many artefacts
14097 from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
14100 * lily/mensural-ligature.cc: bugfix: another few victims of the
14101 "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
14103 * ly/gregorian-init.ly: commit some experimental code for hi-level
14104 ligature input language lying around here for several months.
14106 * lily/mensural-ligature-engraver.cc: bugfix: another victim of
14107 the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
14109 * lily/vaticana-ligature-engraver.cc: bugfix: another few
14110 "x-y-z"->"x.y.s-z" fixes.
14112 2005-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
14114 * scm/framework-pdf.scm (scm): new file
14116 * lily/include/pdf.hh (class Pdf_file): new file.
14118 * lily/pdf.cc (write_trailer): new file.
14120 2005-02-18 Erlend Aasland <erlenda@gmail.com>
14122 * input/regression/color.ly: new file
14124 * lily/stencil.cc (interpret_stencil_expression):
14125 when a color expression is encountered: save current color,
14126 process the rest of the expression, and restore previous color.
14128 * lily/system.cc (get_line): check all grobs for color property and
14129 prepare the stencil scheme expressions for further processing.
14132 * scm/define-grob-properties.scm: introduce the color property.
14134 * scm/output-lib.scm: color helper functions.
14136 * scm/output-ps.scm: introduce setcolor/resetcolor.
14138 2005-02-07 Erik Sandberg <ersa9195@student.uu.se>
14140 * ly/*.ly, input/regression/*.ly: Added missing \version
14141 statements in some files.
14143 2005-02-15 Graham Percival <gperlist@shaw.ca>
14145 * Documentation/user/notation.itely: minor editing.
14147 * Documentation/user/converters.itely: updated convert-ly bugs.
14149 * Documentation/user/lilypond-book.itely: add info about using
14150 feta characters in latex.
14152 2005-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
14154 * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
14156 2005-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
14158 * scm/define-grob-properties.scm (all-user-grob-properties):
14159 removed 'dashed property.
14161 2005-02-13 Nicolas Sceaux <nicolas.sceaux@free.fr>
14163 * scm/lily.scm (define-safe-public): new macro for defining
14164 variables that can be used in --safe mode. Use it in *.scm
14165 instead of manually setting safe-objects in safe-lily.scm.
14167 2005-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
14169 * lily/slur.cc: Slur-dash patch by Bertalan.
14171 * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
14173 * stepmake/bin/add-html-footer.py (do_file): do i18n only once.
14175 2005-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
14177 * stepmake/aclocal.m4: teTeX-3.0 inimf fix. Comment-out.
14179 2005-02-09 Jan Nieuwenhuizen <janneke@gnu.org>
14181 * mf/GNUmakefile: teTeX-3.0 install fix.
14183 * Cygwin patch from Bertalan.
14185 * stepmake/stepmake/metafont-rules.make: Remove bashism.
14187 2005-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
14190 * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
14192 * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc. Add
14193 2.0.x compatibility.
14195 2005-02-08 Werner Lemberg <wl@gnu.org>
14197 * mf/feta-din-code.mf: Format; clean up code.
14198 Replace `---' with `--' plus explicit path directions.
14199 (linethickness#, stafflinethickness#): Remove.
14200 ("dynamic f"): Replace `draw' with `draw_rounded_block'.
14201 ("dynamic s"): Improve shape.
14202 ("dynamic p"): Improve shape.
14203 Replace `draw' with better outline approximation.
14204 ("dynamic r"): Improve shape.
14205 Don't call `fill' and `draw' at the same time.
14207 2005-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
14209 * SConstruct (symlink):
14210 * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
14211 build fix: add enc symlink.
14213 * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
14215 Support for DESTDIR besides prefix=/foo
14217 * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
14219 * stepmake/stepmake/*.make:
14221 * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
14223 * config.make.in (prefix): Remove broken $(DESTDIR) hack.
14225 * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
14226 mawk in fontforge (date) test.
14228 2005-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
14230 * scm/font.scm (make-century-schoolbook-tree): add NCS as
14231 font-family=roman. Add Luxi Sans as sans
14233 2005-02-07 Graham Percival <gperlist@shaw.ca>
14235 * Documentation/user/notation.itely: add warning about
14236 percent repeats and Voice contexts.
14238 * Documentation/user/lilypond-book.itely: clarified the
14239 necessity of dvips -u arguments.
14241 2005-02-07 Erik Sandberg <ersa9195@student.uu.se>
14243 * THANKS: Added a bunch of bug hunters.
14245 2005-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
14247 * scm/framework-ps.scm (output-preview-framework): bugfix.
14249 * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
14250 o/ for chord modifier..
14252 * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
14254 * lily/drum-note-performer.cc: remove unused (thanks Michael
14257 2005-02-06 Jan Nieuwenhuizen <janneke@gnu.org>
14259 * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
14261 * ly/titling-init.ly: Do not also print intstrument in header on
14262 first page. Do not print page number on first and only page.
14264 2005-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
14266 * input/regression/*.ly: remove old-relative everywhere
14268 * lily/music-sequence.cc (simultaneous_relative_callback): do
14269 what-if analysis on copy, not on original. Fixes old-relative
14272 * scm/backend-library.scm (postscript->png): space before
14275 2005-02-05 Werner Lemberg <wl@gnu.org>
14277 * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
14280 * mf/feta-alphabet.mf: Define `staffsize#'.
14281 Include `feta-params.mf'.
14282 s/staffheight/design_size/.
14284 * mf/feta-alphabet??.mf: s/staffheight/design_size/.
14286 * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
14288 * mf/feta-nummer-code.mf: Reformatted.
14289 (draw_six): Use outline intersection to avoid a self-intersecting
14291 ("Numeral comma"): Fix serious outline glitches. This slightly
14292 changes the glyph shape.
14293 ("Numeral dash"): Use `draw_rounded_block'.
14294 ("Numeral dot"): Use `drawdot'.
14295 ("Numeral 1"): Assure identical tangent directions for the
14296 intersection points of paths. The glyph shape improvement is only
14297 visible at very high magnifications.
14298 ("Numeral 2"): Use `solve' macro to make the lower right part of
14299 the glyph outline touch the x axis exactly. This changes the
14301 Minor fixes for better overlap removal support.
14302 ("Numeral 4"): Make lefter corner `rounder'.
14303 ("Numeral 5"): Assure identical tangent directions for the
14304 intersection points of paths. This improves the glyph shape at
14305 high magnifications.
14306 ("Numeral 7"): Use `solve' macro to make the upper right part of
14307 the glyph outline touch the metrics box exactly. This changes the
14309 Avoid corner in the upper left part of the glyph (causing a minor
14312 * mf/feta-ital-*.mf: Removed. Unused.
14314 2005-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
14316 * VERSION (PATCH_LEVEL): release 2.5.11
14318 * input/regression/fill-line-test.ly: new file.
14320 * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
14321 emmentaler name, eg. emmentaler-23.
14323 2005-02-04 Christian Hitz <chhitz@gmx.net>
14325 * scm/scm/define-markup-commands.scm (fill-line): rework for better
14326 alignment with centered texts
14328 * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
14331 2005-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
14333 * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
14335 * lily/note-column.cc (translate_rests): call flush_extent_cache()
14336 of parents when translating rests. Fixes: c-chord-rest.ly
14338 * lily/include/dimension-cache.hh (struct Dimension_cache): add
14339 dimension_callback_ member.
14341 * lily/grob.cc (flush_extent_cache): new function. Force recompute
14344 2005-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
14346 * all but lily/*: The grand 2004/2005 replace.
14348 2005-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
14350 * lily/*: add space after ,
14352 * scm/music-functions.scm (has-request-chord): don't use
14353 ly:music-name anywhere. Fixes <<\\>> notation.
14355 * scm/define-markup-commands.scm (box): use font-size for
14356 padding. Fixes boxed-rehearsal-marks.ly
14358 * lily/parser.yy (assignment_id): allow LYRICS_STRING as
14359 identifier definition too, so foo = \lyrics { ... } bar = #1
14360 doesn't complain about "bar" being LYRICS_STRING.
14362 * lily/paper-def.cc (find_pango_font): new routine; Store
14363 pango_fonts in hash tab too. This is necessary for retrieving
14364 Pango_fonts::physical_font_tab() later on.
14366 * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
14367 crash if psname is null.
14369 * lily/lily-guile.cc (ly_hash2alist): new function
14371 * Documentation/user/changing-defaults.itely (Text encoding):
14374 * lily/pango-font.cc (physical_font_tab): new member. Store PSname
14375 -> font_filename mapping.
14377 * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
14378 ly_pango_font_physical_fonts
14380 * scm/framework-ps.scm (supplies-or-needs): extract names from
14381 physical Pango_fonts.
14383 * utf8.ly: new file.
14385 2005-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
14387 * Documentation/user/changing-defaults.itely (Page layout): add
14388 doco about systemSeparatorMarkup.
14390 * scm/page-layout.scm (default-page-make-stencil): add-to-page
14392 (default-page-make-stencil): insert system separators.
14394 * scm/define-markup-commands.scm (hcenter): add
14397 2005-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
14399 * scm/output-ps.scm (ez-ball): reinstate ez notation.
14401 2005-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
14403 * lily/main.cc: Spell backend consistently. Sort options.
14405 2005-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
14407 * scripts/lilypond-book.py (Module): revert @include.
14409 2005-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
14411 * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
14412 Bugfix: @include .tex (not .texi). Small cleanups.
14414 * stepmake/bin/add-html-footer.py (i18n): New function.
14416 2005-01-31 Werner Lemberg <wl@gnu.org>
14418 * mf/feta-nummer.mf: Removed. Unused.
14420 2005-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
14422 * lily/ : 2004 -> 2005 s&r
14424 * scm/file-cache.scm (cached-file-contents): add file. Read each
14427 * scm/font.scm (add-pango-fonts): change order. Medium weight is
14430 * VERSION: release 2.5.10
14432 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
14434 * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
14436 * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
14437 that both X and Y extents of bbox are non-nil.
14439 2005-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
14441 * scm/chord-name.scm (alteration->text-accidental-markup): change
14444 * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
14446 * scm/framework-ps.scm (dump-stencil-as-EPS): new function
14448 * Documentation/user/invoking.itely (Invoking lilypond): add note
14451 * scm/framework-eps.scm: new file: create per-system/per-page EPS
14452 files for inclusion in lilypond-book document.
14454 * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
14456 * input/tutorial/lbook-texi-test.texi: new file.
14458 * scm/safe-lily.scm (safe-objects): add
14459 {begin,end}-of-line-(in)?visible as safe.
14461 2005-01-30 Graham Percival <gperlist@shaw.ca>
14463 * Documentation/user/changing-defaults.itely: fixed example
14466 2005-01-29 Graham Percival <gperlist@shaw.ca>
14468 * lily/main.cc: fix info about -o=FILE.
14470 2005-01-29 Werner Lemberg <wl@gnu.org>
14472 * mf/feta-toevallig.mf ("Natural"): Completely changed the
14473 construction to assure smooth transition from straight to curved
14476 2005-01-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
14478 * lily/stencil.cc (moved_to_edge): don't halt on adding empty
14481 * ps/lilyponddefs.ps: add start-page, start-system doesn't
14482 translate to top of page. Fixes alignment problems of
14483 lilypond-generated EPS files.
14485 2005-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
14487 * scm/part-combiner.scm (analyse-spanner-states): trigger on
14488 crescendo-end as well, since Decrescendo maybe ended with Stop
14489 Crescendo.). Fixes: partcombine-diminuendo.ly
14491 * scm/script.scm (default-script-alist): swap portato symbols.
14493 * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
14495 * lily/paper-outputter-scheme.cc (LY_DEFINE):
14496 ly:outputter-port. New function.
14498 * scm/framework-ps.scm (output-classic-framework): dump a
14500 (output-classic-framework): dump multiple systems on an "infinite"
14501 page EPS including fonts.
14503 * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
14504 .eps files for both texi and tex formats. Use PNG coming from
14507 2005-01-28 Graham Percival <gperlist@shaw.ca>
14509 * Docuemntation/user/invoking.itely: fix info about -o=FILE.
14511 * scripts/lilypond-latex.py: fix info about -o=FILE.
14513 2005-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
14515 * ly/generate-embedded-cff.ly: write .cff.ps files.
14517 * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
14519 * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
14520 $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
14522 2005-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
14524 * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
14526 2005-01-28 Werner Lemberg <wl@gnu.org>
14528 * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
14530 (draw_bulb): Improved.
14532 * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
14534 (draw_pedal_P): Use soft_end_penstroke.
14535 (draw_pedal_d): Use soft_start_penstroke.
14537 * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
14539 ("Varied Coda"): Move some points to avoid fontforge warnings. This
14540 doesn't change the glyph shape.
14542 * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
14543 changing the shape) to avoid fontforge warnings.
14545 * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
14546 soft_end_penstroke and fix glyph shape.
14548 2005-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
14550 * lily/*.cc: Scheme deprecation of SCM_VECTOR_*
14552 2005-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
14554 * scm/define-markup-commands.scm (line): filter out empty stencils
14557 * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
14560 2005-01-27 Graham Percival <gperlist@shaw.ca>
14562 * Documentation/user/notation.itely: added info about what
14563 \voiceFoo does. Also rewrote warning about marks at
14566 * Documentation/user/changing-defaults.itely: added info
14567 about putting dynamics in parenthesis and brackets.
14569 2005-01-27 Werner Lemberg <wl@gnu.org>
14571 * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
14573 2005-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
14575 * mf/feta-schrift.mf: reverse u and d portato. Fixes:
14576 portato-direction.ly
14578 * lily/beam.cc (consider_auto_knees): add beam height to
14579 threshold. Fixes: knee-multiple-beam.ly
14581 * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
14582 pedal line spanners. Fixes: instrument-center-pedal.ly
14584 * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
14585 if encountering barline. Fixes: auto-beam-repeat.ly
14587 2005-01-26 Werner Lemberg <wl@gnu.org>
14589 * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
14592 * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
14593 with inflections for the 1/2 sharp glyph.
14595 * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
14596 connection between `t' and `r'.
14597 Unify bulb with the rest of `r' to avoid grazing outlines which
14598 confuses the overlap removal algorithm of fontforge.
14600 * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
14602 (draw_cross): Fix shape to have uniform thickness in corners.
14604 * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
14605 to avoid an uneven number of self-intersections; this confuses
14607 Fix a slight bug in the shape at left bottom (which is visible only
14608 at high magnifications).
14609 `Center' the stem horizontally to avoid overlapping.
14611 2005-01-24 Werner Lemberg <wl@gnu.org>
14613 * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
14615 (fet_begingroup): Save group name in string `feta_group'.
14616 (fet_endgroup): Updated.
14617 (fet_beginchar): Emit `glyph_name' special for mf2pt1.
14619 * mf/feta-bolletjes.mf: s/p/pat/ for paths.
14621 * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
14624 2005-01-24 Graham Percival <gperlist@shaw.ca>
14626 * Documentation/user/notation.itely: really minor editing.
14628 2005-01-22 Graham Percival <gperlist@shaw.ca>
14630 * Documentation/user/examples.itely: minor editing.
14632 * Documentation/user/changing-defaults.itely: minor editing.
14634 * Documentation/user/notation.itely: clarified info on polyphony
14637 2005-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
14639 * scm/output-gnome.scm:
14640 * scm/output-svg.scm:
14641 * scm/lily-library.scm (font-name-style): Update font name
14642 kludging for fontconfig use.
14644 2005-01-20 Erlend Aasland <erlenda@gmail.com>
14646 * scm/define-markup-commands.scm: Document right-align and
14647 larger markup commands. Remove "TODO" from the topmost comment
14648 "each markup function should have a doc string." More consistent
14651 2005-01-22 Graham Percival <gperlist@shaw.ca>
14653 * Documentation/user/changing-defaults: removed info about
14654 copyright symbol, since it's likely to change soon.
14655 Added info about betweensystemspace.
14657 * Documentation/user/notation.itely: minor fixes.
14659 * Documentation/user/lilypond.tely,
14660 Documentation/user/music-glossary.tely: changed copyright
14661 date to 2005 instead of 2004.
14663 * input/test/volta-chord-names.ly: added old example back.
14665 2005-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
14667 * mf/feta-beugel.mf: use design size 20 (not 15).
14669 * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14670 change name to aybabtu completely
14672 2005-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
14674 * buildscripts/gen-emmentaler-scripts.py (outdir): add
14675 design_size to fontname
14677 2005-01-19 Werner Lemberg <wl@gnu.org>
14679 * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14680 mf/feta-schrift.mf: s/p/pat/ if a path variable.
14682 * mf/feta-autometric.mf (set_char_box): Add code which emits
14683 specials for mf2pt1 if run with metapost.
14684 (to_bp): New macro for mf2pt1.
14686 2005-01-18 Graham Percival <gperlist@shaw.ca>
14688 * Documentation/user/changing-defaults: added info on
14689 creating a copyright symbol.
14691 2005-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
14693 * VERSION: release 2.5.9
14695 2005-01-18 Erlend Aasland <erlenda@gmail.com>
14697 * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14699 * Documentation/user/notation.itely: Document
14700 score-override-auto-beam-setting Fix documentation for
14701 revert-auto-beam-setting.
14703 2005-01-18 Werner Lemberg <wl@gnu.org>
14705 * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14706 (procset): New function to define a procset resource.
14707 (ps-embed-pfa): New function to define a font resource.
14708 (setup): New function to define a `Setup' environment.
14709 (preamble): Use new functions.
14711 * ps/lilypond.defs (init-lilypond-parameters): New function to
14712 get rid of directly executed PS code. Used in scm/framework-ps.scm.
14714 2005-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
14716 * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14718 2005-01-17 Erlend Aasland <erlenda@gmail.com>
14720 * scm/define-markup-commands.scm: Change number->markletter-string
14721 to take two arguments (vector number). Add number->mark-alphabet-vector
14722 and markalphabet markup command.
14724 * scm/translation-functions.scm: Add format-mark-box-alphabet,
14725 format-mark-alphabet, format-mark-box-barnumbers and
14726 format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14728 2005-01-17 Graham Percival <gperlist@shaw.ca>
14730 * Documentation/user/examples.itely: add SATB automatic piano
14731 reduction template.
14733 * Documentation/user/notation.itely: added info about changing
14734 partcombine texts. Also adds examples of alternate lyrics.
14736 * Documentation/user/changing-defaults.itely: added warning
14737 about \RemoveEmptyStaffContext overriding previous changes.
14739 2005-01-17 Werner Lemberg <wl@gnu.org>
14741 * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14744 2005-01-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
14746 * python/lilylib.py (make_ps_images): don't do final showpage for
14747 multi-page documents.
14749 * VERSION (MY_PATCH_LEVEL): release 2.5.8
14751 2005-01-16 Graham Percival <gperlist@shaw.ca>
14753 * Documentation/user/lilypond.tely: changed order of appendices;
14754 unified index should be last.
14756 * Documentation/user/notation.itely: add example of key signatures
14757 and info about Staff.printKeyCancellation.
14759 2005-01-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
14761 * lily/include/repeated-music.hh (class Repeated_music): change
14762 into "namespace" class.
14764 * lily/event.cc: remove Key_change_event.
14766 * lily/include/transposed-music.hh (class Transposed_music): remove.
14768 * lily/transposed-music.cc: remove
14770 * lily/include/relative-music.hh: remove.
14772 * lily/include/music-sequence.hh (struct Music_sequence): change
14773 into "namespace" class.
14775 * lily/untransposable-music.cc (Module): remove
14777 * lily/include/un-relativable-music.hh (Module): remove
14779 * lily/include/untransposable-music.hh (Module): remove
14781 * lily/include/music-list.hh (Module): remove file
14783 * lily/un-relativable-music.cc: remove file.
14785 2005-01-14 Jan Nieuwenhuizen <janneke@gnu.org>
14787 * lily/parser.yy: Compile fix.
14789 2005-01-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
14791 * lily/include/music.hh (class Music): unvirtualize transpose().
14793 * lily/sequential-music.cc: remove file.
14795 * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14797 * lily/slur-scoring.cc (get_best_curve): only switch on
14798 DEBUG_SLUR_SCORING for non NDEBUG builds.
14800 * lily/include/music.hh (class Music): replace Music::start_mom()
14801 by start-callback property
14803 * lily/include/grace-music.hh: remove file.
14805 * lily/stem.cc (height): robustness fix.
14807 * lily/time-scaled-music.cc: remove file.
14809 * lily/include/music.hh (class Music): include SCM init argument.
14810 (class Music): replace Music::get_length() virtual by
14811 length-callback property everywhere.
14813 * scripts/convert-ly.py (conv): add # to \property scalar value.
14815 * mf/GNUmakefile: don't install *list.ly
14817 2005-01-14 Jan Nieuwenhuizen <janneke@gnu.org>
14819 * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14821 2005-01-12 Werner Lemberg <wl@gnu.org>
14823 This patch addresses the following problems in the feta sources
14824 files which contribute to the fetaXX fonts.
14826 . Many fixes for rasterization at low resolutions (consistent use of
14827 `vround' and `hround', integer shift values for paths, applying
14828 `eps' for mirrored paths, use of `define_whole_pixels' and
14829 friends, etc.) -- while this probably looks like a waste of time
14830 it has revealed deficiencies in some glyph shapes. See comment at
14831 the end of feta-params.mf how vertical symmetry is achieved.
14833 . The `---' operator has been replaced everywhere with `--'; this
14834 both improves and considerably reduces the font size after
14835 conversion with mf2pt1.
14837 These change aren't explicitly mentioned below since virtually all
14838 glyphs are affected.
14840 Other notable differences:
14842 . Glyphs from feta-accordion.mf now have charboxes around the
14845 . Fixed incorrect charbox for `accDot'.
14847 . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14849 . Fixed position of the bow in the `upprall' glyph and its siblings.
14851 . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14852 dependent on the staff line thickness to avoid touching the middle
14853 staff line at smaller sizes.
14855 . Largely extended output for feta-testXX: Where useful, glyphs
14856 are shown both between and on staff lines.
14859 * mf/feta-params.mf (staff_space_rounded,
14860 stafflinethickness_rounded, linethickness_rounded,
14861 ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14862 Update all code which uses them where appropriate.
14863 (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14864 New variables used to control rasterization at low resolutions. Set
14865 to zero if feta code is processed with metapost.
14867 * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14868 (draw_rounded_block, draw_square_block): Updated to use `--' only.
14869 (flare_path): Updated.
14870 Make it work with `filldraw' (but only circular pens).
14871 (hfloor, vfloor, hceiling, vceiling): New macros.
14873 * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14874 Use `draw' again in mf mode to have good pixel dropout control.
14875 Fix intersection points of horizontal lines with circle.
14876 ("accDot"): Fix parameters for set_char_box.
14877 ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14880 * mf/feta-banier.mf: Updated.
14882 * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14884 (undraw_inside_ellipse): Remove `center' argument. Update all
14886 (draw_brevis): New macro, called by "Brevis notehead".
14887 (draw_whole_triangle_head): New macro, called by "Whole
14889 (draw_small_triangle_head): Use `filldraw'.
14891 * mf/feta-eindelijk.mf: Remove useless global group.
14894 * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14897 * mf/feta-pendaal.mf: Updated.
14899 * mf/feta-puntje.mf: Updated.
14901 * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14903 ("Flageolet"): Use `draw' again in mf mode to have good pixel
14905 ("Varied Coda"): Use `draw_block'.
14906 (draw_comma): Fix typo.
14907 (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14908 pixel dropout control.
14910 * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14913 * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14916 * mf/feta-toevallig.mf (remember_pic): New variable, used for
14918 (draw_meta_sharp): Much simplified.
14919 ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14921 * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14923 2005-01-13 Mats Bengtsson <mabe@s3.kth.se>
14925 * Documentation/user/notation.itely (Ancient rests): Fix typo
14928 2005-01-13 Jan Nieuwenhuizen <janneke@gnu.org>
14930 * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14932 * lily/main.cc (setup_paths): Add cff.
14934 * mf/GNUmakefile (foe): Include actual target %.cff.
14935 (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14937 2005-01-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
14939 * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14940 suffix for main_input_b_.
14942 * scm/music-functions.scm (toplevel-music-functions):
14943 precompute music lengths for music expressions.
14945 2005-01-11 Nicolas Sceaux <nicolas.sceaux@free.fr>
14947 * lily/include/input.hh (class Input): new `end_' slot for end of
14948 input. Renamed defined_str0_ to start_.
14950 * lily/input.cc (Input): Add Input::Input (Input const &) and
14951 remove Input::Input (Source_file*, char const *). Use the new
14953 (set_location): method used by bison to propagate input
14954 locations (YYLLOC_DEFAULT).
14955 (end_line_number, end_column_number, step_forward): new methods
14957 * lily/input-scheme.cc (ly:input-both-locations): new function,
14958 similar to ly:input-location, but also return the end line and
14961 * lily/include/includable-lexer.hh:
14962 * lily/includable-lexer.cc:
14963 * lily/include/lily-lexer.hh (class Lily_lexer):
14964 * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14965 Includable_lexer to Lily_lexer, in order to update lexloc (the
14966 yylloc), a new slot of Lily_lexer.
14967 (here_input, LexerError): simplify by using the lexloc slot (aka
14970 * lily/lexer.ll: #define yylloc to use input locations (it may
14971 be useless here?). Fixed the #embedded_scm rule (step the location
14972 forward in order to skip the sharp sign before parsing the scheme
14975 * lily/include/lily-parser.hh (class Lily_parser):
14976 * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14978 (parser_error): overload for more precise locations of errors.
14980 * lily/parser.yy (YYLTYPE): set location type to Input
14981 (YYLLOC_DEFAULT): use Input::set_location()
14982 (yylex): add the YYLTYPE* location parameter.
14983 Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14984 Give an Input parameter to THIS->parser-error() for more accurate
14987 2005-01-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
14989 * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14991 * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14992 on BEAMQUANTING for non-NDEBUG builds.
14994 * lily/stem.cc (head_count): performance: avoid String::String()
14995 inside oft called function.
14997 2005-01-09 Graham Percival <gperlist@shaw.ca>
14999 * Documentation/user/examles.itely: attempted fix for broken
15000 string quartet template.
15002 * Documentation/user/notation.itely: remove unnecessary broken
15005 2005-01-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
15007 * VERSION (PACKAGE_NAME): release 2.5.7
15009 2005-01-09 Jan Nieuwenhuizen <janneke@gnu.org>
15011 * config.make.in (METAFONT): Append -progname=mf, fixes use with
15012 mf-nowin for teTeX-3.0. Backportme.
15014 * scm/output-svg.scm (utf8-string): New function.
15016 * scm/output-gnome.scm (utf8-string): New function.
15017 (otf-name-mangling): Remove.
15019 * lily/pango-font.cc (Pango_font): Use font string iso font
15020 filename for utf8-text.
15022 * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
15025 2005-01-08 Graham Percival <gperlist@shaw.ca>
15027 * Documentation/user/notation.itely: add info about
15028 Staff.extraNatural = ##f in Pitches section. Also
15029 fixed some minor issues in the Vocal music section.
15031 2005-01-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
15033 * scm/output-ps.scm (white-text): comment out Helvetica font,
15034 which is broken for my GS install.
15036 * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
15037 which provides a tighter bbox.
15039 * scm/define-grobs.scm (all-grob-descriptions): remove all
15040 extra-offsets from definitions.
15042 2005-01-08 Erlend Aasland <erlenda@gmail.com>
15044 * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
15045 add tuning for 4-string bass and some common 4/5-string banjo
15046 tunings. New function (four-string-banjo) turns a 5-string tuning
15047 into a 4-string tuning. New function
15048 (fret-number-tablature-format-banjo) computes correct fret numbers
15049 on 5-string banjos.
15051 * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
15052 Add beam correction to TabVoice.
15054 * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
15055 using bold font; makes tabs more readable.
15057 2005-01-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
15059 * lily/font-select.cc (get_font_by_design_size): don't make
15060 Modified_font_metric; this causes trouble, since we don't know the
15061 font magnification from inside Pango_font::text_stencil()
15063 * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
15065 * Documentation/user/notation.itely (The Lyrics context): comment out
15066 broken {Small ensembles} link.
15068 * scm/framework-svg.scm (output-framework): change calling convention.
15070 * lily/object-key-dumper-scheme.cc: new file.
15072 * lily/object-key-undumper-scheme.cc: new file.
15074 * lily/tweak-registration-scheme.cc: new file.
15076 * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
15078 * Documentation/user/examples.itely (String quartet): uncomment
15081 * lily/font-config.cc: new file.
15083 2005-01-08 Jan Nieuwenhuizen <janneke@gnu.org>
15085 * scm/output-svg.scm:
15086 * scm/output-gnome.scm: s/bigcheese/emmentaler.
15088 * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
15090 2005-01-07 Jan Nieuwenhuizen <janneke@gnu.org>
15092 * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
15095 * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
15097 2005-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
15099 * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
15101 * lily/include/main.hh: lose _b hungarian suffixes for global
15104 * lily/include/lily-guile-macros.hh: new file.
15106 * lily/pango-select-scheme.cc (LY_DEFINE): new file.
15108 * lily/general-scheme.cc: new file.
15110 * lily/font-select.cc (get_font_by_design_size): retrieve
15111 PangoFont for (designsize . "pango-descr") entries.
15113 * lily/lily-parser-scheme.cc: new file.
15115 * lily/output-def-scheme.cc: new file.
15117 * lily/paper-book-scheme.cc: new file.
15119 * lily/duration-scheme.cc (LY_DEFINE): new file.
15121 * lily/pitch-scheme.cc: new file.
15123 * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
15125 2005-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
15127 * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
15129 2005-01-06 Graham Percival <gperlist@shaw.ca>
15131 * Documentation/user/notation.itely: minor editing.
15133 * Documentation/user/changing-defaults: minor editing.
15135 * Documentation/user/examples.itely: add template for
15136 string quartet part extraction; demonstrates tag.
15138 2005-01-06 Erlend Aasland <erlenda@gmail.com>
15140 * Documentation/user/notation.itely: documents
15141 format-mark-box-letters and format-mark-box-numbers
15143 * scm/define-context-properties.scm: change comment.
15145 2005-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
15147 * scm/framework-ps.scm (output-classic-framework): new function:
15148 dump systems as separate .eps files (without fonts) and write a
15149 single collecting .tex file.
15151 2005-01-05 Mats Bengtsson <mabe@s3.kth.se>
15153 * Documentation/user/notation.itely (Setting simple songs):
15154 Correct several errors in the equivalent formulation of
15156 (The Lyrics context): Corrected link to the SATB example.
15158 2005-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
15160 * scm/lily.scm (completize-formats): new function
15161 (postprocess-output): new function
15163 * lily/paper-book.cc (classic_output): change calling
15164 convention. Give basename as first argument.
15165 remove Paper_book::post_processing().
15167 * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
15169 2005-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
15171 * lily/paper-outputter.cc (LY_DEFINE): new function
15172 ly:outputter-close.
15174 * lily/main.cc: change --format,-f to --backend,-b
15176 * lily/include/main.hh: rename format to backend.
15178 * scm/translation-functions.scm (format-mark-box-numbers): add.
15179 patch by Erlend Aasland
15181 2005-01-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
15183 * lily/pango-font.cc (text_stencil): dump string as
15184 (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
15186 2005-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
15188 * configure.in (gui_b): Remove handy developer-only
15189 PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
15190 CVS source installations (but break other non-default but correct
15191 PKG_CONFIG_PATH setups), as this is no longer developer-only.
15194 * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
15195 compatibility (backportme).
15197 * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
15199 2005-01-03 Werner Lemberg <wl@gnu.org>
15201 Prepare glyph shapes for mf2pt1 conversion.
15203 * mf/feta-accordion.mf (accreg_pen): Removed. No longer used.
15204 (accDiscant, accFreebase, accStdbase): Replace `draw' with
15206 (accDot): Use `drawdot'.
15207 (accBayanbase): Replace `draw' with `draw_gridline'.
15208 (print_penpos): Moved to feta-macros.mf.
15209 (accOldEE): Replace `filldraw' with `penstroke'.
15210 Replace `draw' with `penstroke' and `drawdot'.
15212 * mf/feta-banier.mf: Code clean-up.
15213 ("grace dash (up)", "grace dash (down)"): Replace `draw' with
15216 * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
15218 * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
15219 paremeter to control drawing of labels. Update all callers.
15221 * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
15222 (new_bulb): Return a bulb as a single path. To do that, it now
15223 takes some more parameters. Updated all callers.
15224 (draw_gclef): Major clean-up. `draw' has been replaced with
15225 `penstroke', unnecessary outlines have been removed.
15226 Remove (unused) gnome-canvas code.
15228 * mf/feta-macros.mf (print_penpos): New macro (from
15229 feta-accordion.mf).
15232 * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
15233 ("Pedal dot"): Use `drawdot'.
15234 (draw_pedal_P): Add parameter to control drawing of labels. Update
15237 (draw_pedal_e): Add parameter to control drawing of labels. Update
15239 (draw_pedal_d): Add parameter to control drawing of labels. Update
15241 Revert drawing direction.
15243 * mf/feta-schrift.mf (draw_fermata): Use single path.
15244 (draw_short_fermata): Replace `filldraw' with `fill'.
15245 (draw_long_fermata, draw_very_long_fermata): Replace calls to
15246 `draw_rounded_block' with a single path.
15247 ("Thumb"): Draw full circle instead of mirroring segments.
15248 (draw_accent): New macro.
15249 ("> accent", "espr"): Use it.
15250 (draw_marcato): Replace `filldraw' and `draw' with `fill'.
15251 ("open (unstopped)"): Draw full circle instead of mirroring
15253 (draw_vee): Removed.
15254 ("Upbow"): Use `draw_accent' instead of `draw_vee'.
15255 ("Downbow"): Replace calls to `draw_rounded_block' with a single
15257 ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
15258 partial pieces drawn with `fill' -- these do still overlap with the
15259 stem of the `t' but just once, not multiple times so that fontforge
15260 can handle it gracefully.
15261 Change other parts of the glyph so that fontforge's overlapping
15262 algorithm reliably works.
15263 (draw_heel): Replace `draw' with `fill'.
15264 (draw_toe): Use `draw_accent' instead of `draw_vee'.
15265 ("Flageolet"): Replace `draw' with `penstroke'.
15266 ("Segno"): Replace `filldraw' with `penstroke'.
15267 Replace `draw' with `drawdot'.
15268 ("Coda"): Replace `fill' with `penstroke', using a single path.
15269 ("Varied Coda"): Use less overlapping paths.
15270 (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
15273 * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
15274 group to better control the `labels' command.
15275 Rename argument to `offset' and use it actually. Update all
15277 Replace `filldraw' with `fill'.
15278 ("mordent", "prallmordent", "upmordent", "downmordent",
15279 "lineprall"): Replace `draw' with `draw_gridline'.
15280 ("upprall", "downprall"): Replace `draw' with `fill'.
15282 * mf/feta-timesig.mf: Formatting.
15284 * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
15287 (draw_paren): Move code to draw labels to...
15288 ("Right Parenthesis"): Here.
15290 2005-01-02 Graham Percival <gperlist@shaw.ca>
15292 * Documentation/user/notation.itely: add example of \setTextDecresc
15295 2005-01-02 Tatsuya Ono <tats_ono@infoseek.jp>
15297 * scm/define-markup-commands.scm : fix glyph-strings of
15298 accidentals and \note-by-number
15300 2005-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
15302 * VERSION: 2.5.6 released.
15304 * ps/lilyponddefs.ps: put mm -> pt scaling in here.
15306 * input/regression/new-markup-scheme.ly: oops. font-family=music
15307 -> font-encoding fetaMusic.
15309 * lily/main.cc: put default to PS.
15311 * lily/tfm.cc: idem.
15313 * lily/afm.cc: idem.
15315 * lily/include/modified-font-metric.hh (struct
15316 Modified_font_metric): remove coding_scheme() method.
15318 * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
15320 * scripts/convert-ly.py (conv): crash on encountering \encoding.
15322 * input/les-nereides.ly: convert to utf8
15324 * lily/modified-font-metric.cc (text_dimension): idem.
15326 * lily/parser.yy (TODO): idem.
15328 * lily/include/lily-lexer.hh (class Lily_lexer): idem.
15330 * lily/lexer.ll: remove encoding
15332 * scm/framework-ps.scm (output-variables): separately scale the
15335 * lily/pango-font.cc (Pango_font): fix scaling.
15337 * lily/font-metric.cc (design_size): design_size returns a
15338 dimension now as well.
15340 2004-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
15342 * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
15345 * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
15347 2004-12-30 Jan Nieuwenhuizen <janneke@gnu.org>
15349 * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
15350 install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
15352 2004-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
15354 * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
15355 in first run as well.
15357 * scm/paper.scm (layout-set-staff-size): use text-font-size in
15358 dimension less points (ie. 12 = 12 point)
15360 * lily/pango-select.cc (select_pango_font): use find_scaled_font().
15362 * lily/all-font-metrics.cc (find_pango_font): set description_
15364 * lily/pango-font.cc (text_stencil): export size as well.
15365 (text_stencil): fix scaling and extents box.
15367 2004-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
15369 * Documentation/topdocs/NEWS.texi (Top): add -f texstr
15371 * Documentation/user/invoking.itely (Invoking lilypond): document
15374 * scripts/convert-ly.py (conv): add ancient rules.
15376 * scm/clef.scm (c0-pitch-alist): replace - with .
15378 * scripts/lilypond-book.py (process_snippets): add texstr support.
15380 * scm/framework-texstr.scm (header): change extension to .textmetrics
15382 * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
15385 * lily/text-metrics.cc: new file.
15386 (try_load_text_metrics): new function
15388 * lily/include/text-metrics.hh: new file.
15390 2004-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
15392 * lily/include/lily-guile.hh (ly_lily_module_constant): rename
15393 ly_scheme_function to ly_lily_module_constant.
15395 * lily/modified-font-metric.cc (text_dimension): try
15396 lookup_tex_text_dimension() first.
15398 * lily/tfm.cc: new function ly:load-text-dimensions
15400 2004-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
15402 * scm/output-texstr.scm (text): use \lilygetmetrics
15404 * scm/framework-texstr.scm (header): dump in new format.
15406 * tex/lilypond-tex-metrics: new file.
15408 2004-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
15410 * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
15412 (index_to_charcode): New method.
15414 * scm/output-ps.scm (glyph-string):
15415 * scm/output-gnome.scm (glyph-string): Add FONT parameter.
15417 2004-12-26 Jan Nieuwenhuizen <janneke@gnu.org>
15419 * scm/output-gnome.scm (FIXME-glyph-string): New function. Cannot
15420 implement fully, need FONT to get to charcode.
15422 * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
15426 * Documentation/user/changing-defaults.itely: Fix internalsrefs
15427 {Tunable context properties},
15428 {All layout objects},
15429 {Music definitions}.
15431 2004-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
15433 * VERSION: release 2.5.5
15435 * lily/main.cc: use TeX as default output format.
15437 * flower/file-path.cc (find): try to open directly as well, so we
15438 find absolute path files.
15440 * lily/pango-select.cc: new file.
15442 * scm/framework-ps.scm: remove all encoding code.
15443 load pfb/pfa for PangoFont too.
15445 * lily/lily-guile.cc (ly_chain_assoc_get): new function.
15447 2004-12-22 Werner Lemberg <wl@gnu.org>
15449 Prepare glyph shapes for mf2pt1 conversion.
15451 * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
15453 * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
15454 (define_triangle_shape): Use it to replace `draw' with `fill' and
15455 `unfill'. Update all callers.
15456 (draw_slash): Replace `filldraw' with `fill'. Update all callers.
15457 (draw_cross): Ditto.
15458 ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
15459 Use penrazor for better conversion with mf2pt1.
15460 (generic_draw_solfa_note_shape, draw_solfa_note_shape,
15461 draw_solfa_quarter_note_shape, triangle): Removed. Unused.
15462 (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
15463 draw_la_head, draw_ti_head): Replace `filldraw' with
15464 `fill'. Update all callers.
15466 2004-12-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
15468 * lily/paper-book.cc (output): revert: only allow a single output
15471 * lily/include/pango-font.hh: new file.
15473 * lily/pango-font.cc: new file.
15475 * lily/font-metric.cc (text_stencil): new routine
15477 * lily/all-font-metrics.cc (find_pango_font): new routine.
15479 * lily/include/font-metric.hh (struct Font_metric): add
15482 * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
15484 2004-12-22 Werner Lemberg <wl@gnu.org>
15486 Prepare glyph shapes for mf2pt1 conversion.
15488 * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
15490 * mf/feta-toevallig.mf: Formatting.
15491 (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
15492 ("Natural"): Fix paths to allow better postprocessing.
15493 (draw_meta_flat): Use `z3l' as additional point in path to get
15494 better conversion with mf2pt1.
15495 Other minor cleanups.
15496 ("3/4 Flat"): Add auxiliary points and modify path to replace
15497 `draw' with `fill'.
15498 ("Double Sharp"): Mirror path segments instead of picture elements
15499 to get a single outline.
15500 Modify path to replace `filldraw' with `fill'.
15502 2004-12-22 Graham Percival <gperlist@shaw.ca>
15504 * input/test/unfold-all-repeats.ly: added file back.
15506 * Documentation/user/notation.itely,
15507 Documentation/user/programming-interface.itely
15508 Documentation/user/changing-defaults.itely: fixed misc broken
15509 links to input/test/ files.
15511 2004-12-22 Jan Nieuwenhuizen <janneke@gnu.org>
15513 * tex/texinfo.tex: Update. We should not be distributing this,
15514 but since we do, use latest version.
15516 * Documentation/user/macros.itexi: Comment-out \fetaflat,
15517 \fetasharp. Fixes make web. FIXME: make usable (compatible?) TeX
15518 macros for feta glyphs.
15520 2004-12-22 Graham Percival <gperlist@shaw.ca>
15522 * Documentation/user/changing-defaults.itely: fix index for set.
15524 * Documentation/user/converters.itely: added convert-ly bugs list
15527 2004-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
15529 * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
15530 to empty. Fixes make web, using gs-gpl-8.01. In fact,
15531 gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
15532 resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
15534 * mf/GNUmakefile (pfa_warning): Use less broken check.
15536 * python/lilylib.py (setup_environment): Remove cruft from
15539 * configure.in: Bump mftrace requirement to 1.1.1.
15541 2004-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
15543 * scm/output-svg.scm (beam): Use polygon.
15545 * scm/lily-library.scm: Bugfix.
15547 * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
15549 * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
15551 2004-12-19 Werner Lemberg <wl@gnu.org>
15553 Prepare glyph shapes for mf2pt1 conversion.
15555 * mf/feta-eindelijk: Some formatting.
15556 (multi_rest_x, multi_beam_height): Removed. Unused.
15557 ("Quarter rest"): Use `intersectiontimes' to create a single
15559 (rest_crook): Removed. Unused.
15560 (draw_rest_bulb): Return path (without filling). Update callers.
15562 (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
15563 "128th rest"): Simplify `pat'.
15564 Create single outline.
15566 2004-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
15568 * mf/GNUmakefile (ALL_GEN_FILES):
15569 (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
15571 * scm/output-svg.scm (polygon, draw-line, dashed-line): New
15574 2004-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
15576 * scm/output-texstr.scm (placebox): add routine
15578 * VERSION (PACKAGE_NAME): release 2.5.4
15580 * scm/framework-texstr.scm (output-framework): new file.
15582 * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
15585 * Documentation/user/invoking.itely (Invoking lilypond): add SVG
15587 * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
15590 * configure.in (gui_b): bump mftrace requirement to 1.1.0
15592 * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
15594 * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
15596 2004-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
15598 * scm/framework-svg.scm (dump-page): Implement landscape.
15600 2004-12-18 Jan Nieuwenhuizen <janneke@gnu.org>
15602 * lily/main.cc (setup_paths): Add svg to search path.
15604 * scm/output-svg.scm:
15605 * scm/framework-svg.scm: Add pageSet. Update.
15606 (dump-fonts): New function.
15607 (output-framework): Use it.
15610 * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
15612 2004-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
15614 * tex/lilyponddefs.tex: comment out new ifpdf code.
15616 2004-12-17 Jan Nieuwenhuizen <janneke@gnu.org>
15619 * SConstruct (symlink): Replace afm by otf.
15621 * scm/framework-gnome.scm (gnome-main): Remove invocation of
15622 ly:pango-add-afm-decoder.
15624 * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
15626 2004-12-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
15628 * scm/output-ps.scm (new-text): don't access t glyph for getting
15631 * ly/init.ly: warn about \version
15633 * lily/lexer.ll: set version-seen?
15635 2004-12-17 Jan Nieuwenhuizen <janneke@gnu.org>
15637 * scm/output-svg.scm (string->entities): Update.
15639 2004-12-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
15641 * lily/main.cc (setup_paths): replace afm by otf for path.
15643 * lily/pangofc-afm-decoder.cc: remove.
15645 * lily/include/pangofc-afm-decoder.hh: remove.
15647 * scm/framework-scm.scm (output-framework): new file.
15649 * mf/GNUmakefile: remove SAUTER_FONTS.
15650 remove SVG/sodipodi hacks.
15652 * scm/lily-library.scm (stderr): move stderr.
15654 * mf/GNUmakefile: remove AFM support.
15656 * buildscripts/mf-to-table.py (base): remove AFM support.
15658 * lily/open-type-font.cc (design_size): use design_size
15660 2004-12-17 Pedro Kroger <kroeger@pedrokroeger.net>
15662 * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15664 2004-12-17 Jan Nieuwenhuizen <janneke@gnu.org>
15666 * mf/GNUmakefile: Generate combined aybabtu info.
15667 * mf/aybabtu.pe.in (i): Load it.
15669 * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15672 * lily/include/open-type-font.hh (count): New method.
15674 * mf/aybabtu.pe.in: Typo.
15676 * Documentation/user/out/lilypond-internals.nexi (Scheme
15679 * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15681 2004-12-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
15683 * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15686 * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15688 * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15689 (tex-font-command-raw): new function.
15691 * lily/include/virtual-font-metric.hh (Module): remove file
15693 * lily/virtual-font-metric.cc (Module): remove file.
15696 * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15697 (get_indexed_char): read bbox from lily table if present.
15699 2004-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
15701 * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15704 * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15705 global glyphname. Enables more than 64 glyphs in the OTF.
15707 2004-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
15709 * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15712 * lily/open-type-font.cc (design_size): Use 12 as default for
15715 * mf/aybabtu.pe.in: New file. Merge all our braces.
15717 * mf/GNUmakefile: Generate aybabtu.
15719 * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15721 2004-12-14 Jan Nieuwenhuizen <janneke@gnu.org>
15723 * scm/lily-library.scm (char->unicode-index): Remove.
15725 * scm/output-gnome.scm (text): Bugfix for plain string input.
15728 * scm/output-svg.scm (svg-font): Add weight to font selection.
15730 2004-12-14 Mats Bengtsson <mabe@s3.kth.se>
15732 * Documentation/topdocs/INSTALL.texi (Top): Point to
15733 buildscripts/out/clean-fonts instead of
15734 buildscripts/clean-fonts.sh.
15736 2004-12-13 Graham Percival <gperlist@shaw.ca>
15738 * input/regression/figured-bass.ly: attempt to clarify text.
15740 * Documentation/user/notation.tely: add cindex for tag, attempt to
15741 add figured bass example.
15743 * Documentation/user/changing-defaults: basic editing.
15745 2004-12-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
15747 * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table.
15749 * lily/open-type-font.cc (LY_DEFINE): new function
15752 * lily/include/font-metric.hh (struct Font_metric): new method
15755 * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15756 . with - in add.stem.
15758 2004-12-13 Jan Nieuwenhuizen <janneke@gnu.org>
15760 * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15763 * lily/rest.cc (glyph_name): Change - to . .
15765 * scm/output-gnome.scm (text): Hello world, again.
15767 * scm/output-svg.scm (named-glyph): New function. Hello world!
15769 * lily/modified-font-metric.cc (index_to_charcode): New method.
15771 * lily/include/font-metric.hh (index_to_charcode): New function.
15773 * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15775 (ly:font-glyph-to-index): Remove.
15777 2004-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
15779 * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15781 * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15783 * lily/open-type-font.cc (load_scheme_table): new function
15785 * lily/dots.cc (print): replace -
15787 * lily/open-type-font.cc (attachment_point): new function.
15788 (load_table): read LILC table
15790 * buildscripts/gen-bigcheese-scripts.py (Module): new
15791 file. Generate FF scripts.
15793 * mf/feta-din10.mf: idem.
15795 * mf/feta-nummer10.mf: remove mf files.
15797 * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15799 2004-12-12 Jan Nieuwenhuizen <janneke@gnu.org>
15801 * lily/lily-guile.cc: Use scm_from_locale_stringn.
15803 * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15806 2004-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
15808 * lily/open-type-font.cc (get_indexed_char): scale metrics by
15809 design-size and units_per_EM.
15811 * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15813 2004-12-12 Jan Nieuwenhuizen <janneke@gnu.org>
15815 * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15816 does not crash fontforge.
15818 * scm/lily-library.scm (char->unicode-index): Hack to map onto
15821 2004-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
15823 * scm/framework-ps.scm (ps-embed-cff): new function.
15825 * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15827 2004-12-12 Werner Lemberg <wl@gnu.org>
15829 * mf/bigcheese.pe.in: Add PUA mapping.
15830 Don't create Type 42 but bare CFF font.
15832 2004-12-12 Jan Nieuwenhuizen <janneke@gnu.org>
15834 * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15835 within canvas boundaries.
15837 * mf/merge.pe.in: Set font names, version, license GPL.
15839 * make/substitute.make: Add FONTFORGE.
15841 * config.make.in (FONTFORGE): Add.
15843 * configure.in (gui_b): Use PATH_PROG for fontforge.
15845 2004-12-11 Graham Percival <gperlist@shaw.ca>
15847 * scm/define-markup-commands.scm: add baseline-skip to info
15850 2004-12-11 Jan Nieuwenhuizen <janneke@gnu.org>
15852 * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15854 * scm/output-gnome.scm (named-glyph): Use it.
15856 * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15858 * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15859 (upper_string, lower_string, reverse_string): Remove.
15861 * configure.in (fontforge): Reinstate version check.
15863 * ly/engraver-init.ly: Fix clef glyph names.
15865 * lily/time-signature.cc (special_time_signature): Fix fraction
15868 2004-12-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
15870 * mf/merge.pe: new file.
15872 * lily/freetype.cc: new file.
15874 * lily/include/open-type-font.hh (class Open_type_font): new file.
15876 * lily/include/freetype.hh: new file.
15878 * lily/open-type-font.cc: new file.
15880 * lily/all-font-metrics.cc (find_otf): new function.
15882 2004-12-11 Jan Nieuwenhuizen <janneke@gnu.org>
15884 * lily/time-signature.cc (special_time_signature): Fix.
15886 * configure.in (PKG_CONFIG_PATH): Remove stray `i'. Check for
15887 GTK2 before checking for pango. Fixes -fgnome.
15889 * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15892 * scm/define-markup-commands.scm:
15893 * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15895 * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15897 * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15898 date versions. Fixes configure.
15899 (STEPMAKE_CHECK_VERSION): Support optional actual program version
15902 2004-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
15904 * buildscripts/mf-to-table.py (write_ps_encoding): write real
15907 * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15909 2004-12-09 Graham Percival <gperlist@shaw.ca>
15911 * Documentation/user/changing-defaults.itely: add info about
15912 make-dynamic-script
15914 * Documentation/user/notation.itely: add link in dynamics to
15915 section about make-dynamic-script.
15917 2004-12-09 Christian hitz <chhitz@gmx.net>
15919 * lily/lily-guile.cc: change MACOS_X to __APPLE__
15921 2004-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
15923 * buildscripts/mf-to-table.py (parse_logfile): use . for
15924 concatting name and group.
15925 (parse_logfile): use M for Minus (negative.)
15927 * lily/include/type-swallow-translator.hh
15928 (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15930 * lily/*.cc: cosmetics around = sign.
15932 * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15933 lyric spacing on the penultimate column.
15935 2004-12-05 Christian Hitz <chhitz@gmx.net>
15938 * lily/accidental-placement.cc:
15939 * lily/bar-line.cc:
15940 * lily/beam-concave.cc:
15941 * lily/beam-quanting.cc:
15943 * lily/bezier-bow.cc:
15945 * lily/break-align-interface.cc:
15947 * lily/dimension-cache.cc:
15948 * lily/dot-column.cc:
15949 * lily/font-metric.cc:
15950 * lily/font-select.cc:
15951 * lily/gourlay-breaking.cc:
15952 * lily/grob-property.cc:
15954 * lily/lily-guile.cc:
15955 * lily/line-spanner.cc:
15957 * lily/lyric-extender.cc:
15958 * lily/lyric-hyphen.cc:
15959 * lily/mensural-ligature.cc:
15960 * lily/midi-def.cc:
15962 * lily/note-collision.cc:
15963 * lily/note-column.cc:
15964 * lily/note-head.cc:
15965 * lily/paper-outputter.cc:
15966 * lily/percent-repeat-item.cc:
15967 * lily/rest-collision.cc:
15968 * lily/side-position-interface.cc:
15969 * lily/simple-spacer.cc:
15970 * lily/slur-configuration.cc:
15971 * lily/slur-scoring.cc:
15973 * lily/spaceable-grob.cc:
15974 * lily/spacing-spanner.cc:
15976 * lily/staff-symbol-referencer.cc:
15979 * lily/system-start-delimiter.cc:
15981 * lily/text-item.cc:
15983 * lily/tuplet-bracket.cc:
15984 * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15985 <cmath> beacause isinf/isnan is undefined in <cmath>
15987 2004-12-03 Mats Bengtsson <mabe@s3.kth.se>
15989 * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15991 2004-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
15993 * VERSION: release 2.5.3
15995 2004-11-29 Arno Waschk <arno@arnowaschk.de>
15997 * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15999 2004-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
16001 * scm/music-functions.scm (cue-substitute): voice counts start at 0.
16003 * lily/note-head.cc (internal_print): always try the "s" head if
16006 * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
16008 2004-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
16010 * mf/parmesan-heads.mf (overdone_heads): typos.
16012 2004-11-30 Nicolas Sceaux <nicolas.sceaux@free.fr>
16014 * lily/parser.yy (markup): in markups, { .. } without command
16015 before are also flattened, ie \line must be explicitely used.
16017 * Documentation/user/changing-defaults.itely:
16018 * Documentation/user/notation.itely:
16019 * input/wilhelmus.ly:
16020 * input/regression/instrument-name-markup.ly:
16021 * input/regression/markup-score.ly:
16022 * input/regression/new-markup-scheme.ly:
16023 * input/regression/new-markup-syntax.ly:
16024 * input/test/coriolan-margin.ly: use \line in markups where
16027 2004-11-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
16029 * scm/new-markup.scm (map-markup-command-list): helper function
16030 used in parser.yy to map markup commands on a markup list.
16032 * lily/parser.yy: get rid off < > in markups by treating { } as
16035 * lily/lexer.ll: remove < > from markup lexer mode.
16037 * scripts/convert-ly.py (conv): add rule for converting
16038 \markup < > to \markup { }
16040 * ly/titling-init.ly:
16041 * input/test/coriolan-margin.ly:
16042 * input/regression/new-markup-syntax.ly:
16043 * input/regression/new-markup-scheme.ly:
16044 * input/regression/multi-measure-rest-text.ly:
16045 * input/regression/markup-stack.ly:
16046 * input/regression/markup-score.ly:
16047 * input/regression/instrument-name-markup.ly:
16048 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly:
16049 * input/mutopia/R.Schumann/romanze-op28-2.ly:
16050 * input/mutopia/J.S.Bach/wtk1-fugue2.ly:
16051 * input/wilhelmus.ly:
16052 * Documentation/user/notation.itely:
16053 * Documentation/user/music-glossary.tely:
16054 * Documentation/user/changing-defaults.itely: change < > to { } in
16057 2004-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
16059 * lily/accidental-placement.cc (position_accidentals): shortcut if
16060 no accidentals to place.
16062 2004-11-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
16064 * scm/define-grob-properties.scm (all-user-grob-properties): fixed
16065 typo s/ly:dimension ?/ly:dimension?/
16067 * input/regression/lily-in-scheme.ly:
16068 * input/regression/music-function.ly:
16069 * ly/spanners-init.ly (assertBeamSlope):
16070 * scm/music-functions.scm (def-grace-function): add the paper
16071 argument to music function definitions.
16073 2004-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
16075 * lily/moment.cc (LY_DEFINE):
16076 ly:moment-main-{denominator,numberator}, new function.
16078 * lily/score-engraver.cc (typeset_all): assign to column on basis
16079 of axis-group-parent-X setting.
16081 * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
16082 add_element() on basis of axis-group-parent-Y setting.
16084 * lily/grob.cc: add axis-group-parent-{XY} properties.
16086 * input/regression/spacing-stick-out.ly: new file.
16088 * lily/simple-spacer.cc (add_columns): use binary search for
16089 setting column rods. Changes O(n^2) to O(n log(n)) for
16090 constructing spacing problem from columns.
16091 (add_columns): read allow-outside-line to make sure no texts stick
16093 (solve): Simple_spacer::is_active() only determines
16094 satisfies_constraints_ for non-ragged typesetting.
16096 * lily/simultaneous-music.cc (to_relative_octave): only set
16097 old_relative_used if return pitch actually changed.
16099 * scm/define-context-properties.scm
16100 (all-user-translation-properties): change to match implementation.
16102 * python/lilylib.py: Replace re.match by re.search and adds "-c
16103 showpage" to the gs command line (Johannes Schindelin)
16105 * scm/framework-ps.scm (output-preview-framework): sanitize bbox
16106 before processing. Prevents crash when inf is in the extent.
16108 * scm/define-markup-commands.scm (note-by-number): add "s" to
16109 "noteheads-" glyphname.
16111 * lily/parser.yy (Generic_prefix_music): supply parser argument to
16112 music function as well.
16114 2004-11-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
16116 * VERSION: release 2.5.2
16118 * Documentation/user/changing-defaults.itely (Creating titles):
16119 add breakbefore variable.
16121 * lily/paper-book.cc (set_system_penalty): new function. Set
16122 penalty_ based on breakBefore setting
16124 * lily/context-specced-music-iterator.cc (construct_children):
16125 interpret special context id $uniqueContextId
16127 * lily/context.cc (create_unique_context): new method. Move
16128 creation of unique (\new) contexts into interpreting phase. This
16137 * scm/define-music-properties.scm (all-music-properties): add
16138 quoted-voice-direction
16140 * ly/music-functions-init.ly: killCues function.
16142 * scm/music-functions.scm (cue-substitute): move creation of voice
16143 contexts further to the back.
16145 2004-11-25 Werner Lemberg <wl@gnu.org>
16147 * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
16148 `/hyphen' in encoding vector to get correct glyph name for EC fonts.
16150 2004-11-24 Erik Sandberg <ersa9195@student.uu.se>
16152 * buildscripts/guile-gnome.sh: Fixed typo.
16154 2004-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
16156 * lily/lexer.ll: add < > to markup lexer mode (backportme)
16158 * scripts/abc2ly.py (dump_slyrics): add ord().
16160 * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
16161 to regular engraver.
16163 2004-11-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
16165 * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
16167 2004-11-22 Jan Nieuwenhuizen <janneke@gnu.org>
16169 * scm/define-markup-commands.scm (fill-line): Typo.
16171 * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
16174 2004-11-22 Erik Sandberg <ersa9195@student.uu.se>
16176 * ly/dynamic-scripts-init.ly: Fixed typo.
16178 2004-11-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
16180 * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
16181 note-head, to have different attachment points for up and down.
16183 * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
16185 * mf/feta-generic.mf (else): remove solfa.
16187 * mf/feta-bolletjes.mf (tishape): remove unicode test.
16189 * scm/define-context-properties.scm
16190 (all-user-translation-properties): add shapeNoteStyles property.
16192 * lily/shape-note-heads-engraver.cc (process_music): new file.
16194 * lily/event.cc (transpose): call Event::transpose() for
16195 transposing the tonic.
16197 2004-11-21 Jan Nieuwenhuizen <janneke@gnu.org>
16199 * scm/output-gnome.scm: Save some pointers about pango/fontconfig
16200 Unicode/OpenType and AFM.
16202 * lily/include/guile-compatibility.hh (scm_from_bool): Add.
16204 2004-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
16206 * lily/grob.cc (Grob): idem. Plugs mem leaks.
16208 * lily/context.cc (Context): unprotect key from ctor.
16210 * scm/stencil.scm (stack-lines): return empty-stencil if argument
16212 (stack-stencils): idem.
16214 * Documentation/user/changing-defaults.itely (Creating titles):
16215 document new title layout options.
16217 * lily/parser.yy (lilypond_header_body): copy previous
16218 $globalheader if present.
16220 * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
16223 * scm/page-layout.scm (marked-up-headfoot): remove old functions.
16225 * scm/titling.scm: remove old titling functions
16227 * lily/stencil.cc (translate): remove absolute dimension.
16229 * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
16232 * scm/page-layout.scm (marked-up-headfoot): create header/footer
16233 field from user-supplied markup
16235 * scm/define-markup-commands.scm (on-the-fly): new markup
16236 command. Enter SCM markup procedure directly in Scheme.
16237 (fromproperty): new markup command. Read markup from props argument.
16239 * scm/titling.scm (marked-up-title): create title via
16240 user-specified markup.
16242 * scm/define-markup-commands.scm (column): remove empty stencils
16245 * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
16246 not have side-effect of creating variable stub.
16248 * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
16250 2004-11-21 Jan Nieuwenhuizen <janneke@gnu.org>
16252 * scm/encoding.scm (coding-alist):
16253 * scm/font.scm (add-ec-fonts):
16254 * ly/paper-defaults.ly: Use actual name for EC fontencoding:
16255 Extended-TeX-Font-Encoding---Latin.
16257 * lily/side-position-interface.cc (general_side_position): Add
16258 actual offset to error message (avoid constant error messages).
16260 * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
16263 * lily/font-select.cc (select_encoded_font)
16264 (get_font_by_mag_step, get_font_by_design_size):
16265 * lily/modified-font-metric.cc (Modified_font_metric):
16266 * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
16268 * scm/encoding.scm (coding-alist): Add fetaDynamic.
16269 (read-encoding-file): Bugfix: do not require space after bracket.
16271 * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
16272 these do not exist.
16274 2004-11-20 Graham Percival <gperlist@shaw.ca>
16276 * Documentation/user/notation.itely: added info about typesetting
16279 2004-11-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
16281 * flower/interval.cc (T_to_string): gcc4 fixes.
16283 * scm/define-markup-commands.scm (fill-line): use
16284 stack-stencils. This fixes problems with putting already centered
16285 stencils in a line.
16287 * VERSION: release 2.5.1
16289 * lily/bar-line.cc (get_staff_bar_size): add line thickness.
16291 2004-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
16293 * input/example-[1-3].ly: simplify.
16295 * lily/cluster-engraver.cc (try_music): react to busy-playing-event
16297 * scm/output-ps.scm (new-text): new function. Use glyphshow to
16300 * scm/encoding.scm (decode-byte-string): new function.
16302 * scripts/convert-ly.py (conv): add warning about
16303 set-global-staff-size.
16307 * scripts/convert-ly.py (conv): add raggedlastbottom rule
16308 (conv): warn for TextSpanner split.
16309 (conv): warn for textheight.
16311 2004-11-19 Jan Nieuwenhuizen <janneke@gnu.org>
16313 * GNUmakefile.in (install-WWW): Invoke install-info, so that when
16314 building the documentation, info with images are installed.
16315 (final-install): Fix description. Mention sourcing of login
16316 scripts (instead of running).
16318 2004-11-18 Jan Nieuwenhuizen <janneke@gnu.org>
16320 * Debian lmodern support. Note that LilyPond will issue warnings
16322 no such encoding: "FontSpecific"
16324 The font selection mechanism wants to get the encoding from the
16325 font itself, but the idea of lmodern is that it is usable with
16326 different encodings, ie, Lily should get the encoding from the
16327 font tree, rather than the font itself. This would require some
16330 * configure.in: Test for and accept lmodern if EC fonts not found.
16332 * scm/framework-tex.scm (font-load-command): TeX font name
16333 mangling for latin1 encoded cork-lm fonts.
16334 (convert-to-ps): Load lm.map if available.
16336 * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
16339 * scm/encoding.scm (coding-alist): Add cork-lm encoding.
16341 * scm/font.scm: Add header. Autoload cork-lm and ec fonts if
16344 * lily/kpath.cc (ly_kpathsea_find_file): Rename. Do not use
16345 path for absolute file name, that is silly.
16347 * lily/score-engraver.cc (initialize):
16349 * Documentation/user/GNUmakefile (local-install-info): Invoke
16350 install-info --remove first.
16352 * #include cleanup (Andreas Scherer).
16354 2004-11-18 Heikki Junes <hjunes@cc.hut.fi>
16356 * input/test/script-abbreviations.ly: fix typos.
16358 2004-11-17 Werner Lemberg <wl@gnu.org>
16360 * python/lilylib.py (options_help_str): Support pretty-printing of
16361 newlines in fourth element of option description.
16363 * scripts/lilypond-book.py (option_definitions): Use new lilylib
16367 * Documentation/user/lilypond-book.itely: Finish update.
16369 2004-11-17 Jan Nieuwenhuizen <janneke@gnu.org>
16371 * Documentation/user/macros.itexi: Add comment about \command.
16373 * Documentation/user/lilypond.tely:
16374 * Documentation/user/lilypond-book.itely: Fix names of lilypond
16375 and lilypond-book nodes, so that `info lilypond' visits the manual
16376 at top level, and `info lilypond-book' visits the lilypond-book
16379 * Documentation/user/GNUmakefile (local-install-info): Fix rules
16380 and packager messages.
16382 * lily/pangofc-afm-decoder.cc: Update test.
16384 2004-11-16 Jan Nieuwenhuizen <janneke@gnu.org>
16386 * scm/lily-library.scm (char->unicode-index): New function.
16388 * scm/output-gnome.scm:
16389 * scm/output-svg.scm: Cleanup. Map custom fonts to PUA.
16391 * Proper naming of file name throughout; s/filename/file[-_]name/.
16393 * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
16395 * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
16397 2004-11-16 Werner Lemberg <wl@gnu.org>
16399 * scripts/lilypond-book.py: The Lord has commanded me to use only
16400 tabs for indentation. Your humble servant obeys.
16402 2004-11-16 Jan Nieuwenhuizen <janneke@gnu.org>
16404 * scm/output-svg.scm: Font fixes. Sodipodi now groks svg
16405 including font, if LilyPond-feta font is only feta font in path.
16407 * scm/output-gnome.scm (text): Revert to file name of font if font
16408 has no name. Fixes ec font selection.
16409 (char): Bugfix: do not utf8 twice. Fixes clefs.
16411 * scm/framework-svg.scm:
16412 * scm/output-svg.scm: New file. TODO: figure out how to
16413 do character by index in font.
16415 * scm/output-sodipodi.scm: Remove.
16417 * scm/output-ps.scm (stem): Remove.
16419 2004-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
16421 * scm/output-gnome.scm (beam): New function.
16422 (slur): Round corners.
16423 (round-filled-box): Round corners.
16425 2004-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
16427 * scm/output-gnome.scm (beam): add function.
16428 (draw-line): new routine.
16429 (dashed-line): stub; call draw-line
16430 (polygon): new routine.
16432 2004-11-15 Werner Lemberg <wl@gnu.org>
16434 * Documentation/user/lilypond-book.itely: Revise section on
16435 lilypond-book options.
16438 * scripts/lilypond-book.py: Change indentation to 4.
16441 2004-11-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
16443 * lily/system.cc (apply_tweaks): new function. Run tweaks on all
16444 grobs that have tweaks specced.
16446 2004-11-14 Heikki Junes <hjunes@cc.hut.fi>
16448 * Documentation/user/sound-output.itexi: add code snippets for MIDI.
16450 2004-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
16452 * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
16453 actual char #, not 0 based index.
16455 * lily/system-start-delimiter.cc (staff_brace): Start at 65.
16457 * mf/feta-beugel.mf: Actually start at char #65. Add header.
16458 Warning: do make -C mf clean.
16460 * lily/context-property.cc: Compile fix.
16462 * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
16463 Grok ec-fonts, braces and dynamics.
16465 * scm/framework-gnome.scm (gnome-main): Register braces with pango.
16467 2004-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
16469 * lily/include/tweak-registration.hh: new file.
16471 * lily/tweak-registration.cc: new file.
16473 * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
16476 * scm/output-gnome.scm (text): comment dribble.
16478 2004-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
16480 * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
16482 * scm/output-gnome.scm (bezier-sandwich): New function. Reset
16483 path-def before using. Fixes muchtomany slurs in wrong places
16486 2004-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
16488 * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
16490 * lily/include/object-key-undumper.hh (Module): new file.
16492 * lily/object-key-undumper.cc (Module): New file. Deserialize
16495 * lily/object-key-dumper.cc (Object_key_dumper): idem.
16496 Provide SCM bindings.
16498 * lily/include/object-key-dumper.hh (class Object_key_dumper):
16499 new file. Serialize object keys.
16501 * lily/object-key.cc (dump): new function.
16502 (as_scheme): new virtual function
16503 (undump): new function
16504 (undumpers): new table.
16506 * lily/include/global-context.hh (Context): take \score key upon init.
16508 * lily/object-key-dumper.cc (serialize_key): new file.
16510 * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
16512 * lily/lily-lexer.cc: remove \quote.
16514 * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
16516 * lily/context.cc (Context): take key argument in ctor.
16517 (create_context): new function
16519 * lily/grob.cc (Grob): take key argument in ctor.
16521 * lily/lilypond-key.cc (do_compare): new file.
16523 * lily/object-key.cc (Object_key): new file.
16525 * lily/include/object-key.hh (class Object_key): new file.
16527 * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
16529 2004-11-13 Graham Percival <gperlist@shaw.ca>
16531 * Documentation/user/lilypond-book.itely: add small warning about
16532 noindent default in lilypond-book.
16534 * Documentation/user/converters.itely: add examples for convert-ly.
16536 * Documentation/user/examples.itely: change version string in templates
16539 2004-11-12 Karl Hammar <karl@aspodata.se>
16541 * GNUmakefile.in (local-WWW-post): `find ...` overflows the
16542 cmdline, use xargs instead (backportme)
16544 2004-11-10 Andreas Scherer <andreas_mutopia@freenet.de>
16546 * Documentation/user/: Numerous fixes in the user manual.
16548 2004-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
16550 * lily/parser.yy (re_rhythmed_music): search music expression for
16551 context-id, surround by \new Voice if not found. Fixes:
16552 addlyrics-second-staff.ly
16554 * VERSION: 2.5.0 released.
16556 2004-11-12 Jan Nieuwenhuizen <janneke@gnu.org>
16558 * Documentation/index.html.in: Fix url to one big page. (backportme)
16560 * Documentation/user/GNUmakefile: Separate rules for split and
16561 unsplit html documents. Remove perl massaging. (backportme)
16563 2004-11-11 Graham Percival <gperlist@shaw.ca>
16565 * Documentation/user/lilypond-book.itely: add short warning about
16566 \lilypond{} in LaTeX docs.
16568 2004-11-11 Jan Nieuwenhuizen <janneke@gnu.org>
16570 * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
16571 found. (backportme)
16573 * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
16574 version requirement. (backportme)
16576 * configure.in: Be explicit about old versions of
16577 ec-fonts-mtraced. (backportme)
16579 * lily/context-selector.cc (set_tweaks): New function.
16580 * lily/grob-selector.cc (set_tweaks): (Re)set hash table. Fixes
16583 * Documentation/user/introduction.itely (Automated engraving):
16584 Remove fragment option. Fixes web.
16586 * lily/context-property.cc (make_item_from_properties):
16587 * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
16590 * scm/define-context-properties.scm
16591 (all-internal-translation-properties): Add tweakRank and tweakCount.
16594 * scm/define-grob-properties.scm (all-internal-grob-properties):
16595 Add tweak-rank and tweak-count.
16597 2004-11-10 Jan Nieuwenhuizen <janneke@gnu.org>
16599 * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
16603 * scm/framework-gnome.scm (item-event): Add support from TLA. Support
16604 animated/opaque grob dragging tweaks.
16606 * buildscripts/guile-gnome.sh: Update.
16608 2004-11-10 Mats Bengtsson <mabe@s3.kth.se>
16610 * scm/define-grobs.scm (all-grob-descriptions): Added
16611 line-interface to the LigatureBracket object.
16613 2004-11-10 Jan Nieuwenhuizen <janneke@gnu.org>
16615 * scm/framework-gnome.scm (item-event): Support non-animated mouse
16618 * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
16620 * lily/context-selector.cc (store_context): New function.
16622 * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
16623 (store_grob): New function.
16624 (identify_grob): Add Moment parameter.
16626 * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
16629 * scm/framework-gnome.scm (save-tweaks): Write as alist.
16631 2004-11-09 Jan Nieuwenhuizen <janneke@gnu.org>
16633 * scm/framework-gnome.scm (item-event): Print grob id.
16634 (save-tweaks): New function.
16635 (tweak): New funtion.
16636 (item-event): Use it, bound to arrow keys.
16638 * lily/context-property.cc (make_item_from_properties): Register grob.
16639 * lily/context.cc (add_context): Register context.
16641 * lily/include/context-selector.hh:
16642 * lily/include/grob-selector.hh:
16643 * lily/context-selector.cc:
16644 * lily/grob-selector.cc: New file.
16646 2004-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
16648 * lily/slur.cc: add 'positions to interface
16650 * lily/main.cc: reinstate PS as standard output format.
16652 * scm/framework-tex.scm (output-preview-framework): print systems
16653 up to first non title system.
16655 * lily/grace-engraver.cc (start_translation_timestep): split
16658 2004-11-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
16660 * lily/quote-iterator.cc (Module): remove old quote-iterator
16662 * scm/define-music-types.scm (music-descriptions): move
16663 NewQuoteMusic over QuoteMusic
16665 * Documentation/user/notation.itely (Formatting cue notes): use
16668 * lily/new-quote-iterator.cc (quote_ok): new function.
16670 * input/regression/quote-cue-during.ly: new file.
16672 * input/regression/quote-grace.ly: new file.
16674 * scm/define-context-properties.scm (Module): change definition of
16677 * lily/context-property.cc (Module): rename from
16678 translator-property.cc
16680 * lily/context.cc (context_name_symbol): new function
16682 * lily/grace-engraver.cc: new file. Set properties for grobs based
16683 on the grace-ness of now_moment().
16685 * scm/music-functions.scm (add-grace-property): use list
16686 iso. vector for graceSettings
16687 remove set-{start,stop}-grace-properties.
16689 * lily/new-quote-iterator.cc (construct_children): set
16690 quote_outlet_ if no quoted-context-{id,type} specified.
16692 * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16694 * lily/parser.yy (command_element): remove \quote.
16696 * ly/music-functions-init.ly (location): add quoteDuring music
16699 * lily/lexer.ll: allow \encoding in lyrics as well. Remove
16700 optional semicolon. (backportme)
16702 2004-11-06 Jan Nieuwenhuizen <janneke@gnu.org>
16704 * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16705 need to link to GUILE et al.
16707 2004-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
16709 * scm/define-music-properties.scm (all-music-properties): add
16710 quoted-context-type, quoted-context-id.
16712 * scm/lily.scm (type-check-list): new function.
16714 * scm/lily-library.scm: new file. Generic library routines.
16716 * lily/parser.yy (Generic_prefix_music): move typechecking out of
16719 * ly/music-functions-init.ly: add quoteDuring function.
16721 * lily/include/music-iterator.hh (class Music_iterator): rename
16722 set_translator -> set_context
16724 * lily/parser.yy (Generic_prefix_music_scm): add
16725 MUSIC_FUNCTION_SCM_SCM_MUSIC
16727 * scm/lily.scm (sanitize-command-option): new function. (backportme)
16729 * scm/framework-tex.scm (header): sanitize TeX paper size.
16732 2004-11-06 Jan Nieuwenhuizen <janneke@gnu.org>
16734 * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16736 * tex/lilyponddefs.tex: If no inputencoding use latin1. (backportme)
16738 * scm/framework-tex.scm (font-load-command): Use T1 if no
16739 font-encoding set. (backportme)
16741 * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16742 exists before converting. (backportme)
16744 * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16745 exists before converting. (backportme)
16746 (convert-to-ps): Remove .ps file if it exists before
16747 converting. (backportme)
16749 * lily/lexer.ll: Remove extra progress newline, use present tense.
16751 * scm/paper.scm (paper-alist): public.
16752 * scm/framework-tex.scm (convert-to-ps):
16753 * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16756 2004-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
16758 * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16760 * lily/recording-group-engraver.cc (derived_mark): mark
16761 now_events_. (backportme)
16763 2004-11-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
16765 * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16767 * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16768 invoking latex. (backportme.)
16770 * lily/stem.cc (off_callback): center stems for all rest stems.
16772 2004-11-05 Werner Lemberg <wl@gnu.org>
16774 * Documentation/user/lilypond.tely: Add more guidelines for writing
16775 lilypond texinfo documents.
16777 2004-11-05 Heikki Junes <hjunes@cc.hut.fi>
16779 * Documentation/index.html.in: remove <hr>.
16781 * THANKS: change 2.3 to 2.4.
16783 2004-11-05 Jan Nieuwenhuizen <jannneke@gnu.org>
16785 * scm/output-gnome.scm: More fontconfig comment.
16787 2004-11-05 Pedro Kroger <kroeger@pedrokroeger.net>
16789 * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16790 <package> directory in $(builddir)/share according with
16791 PACKAGE_NAME defined in the VERSION file.
16793 2004-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
16795 * lily/beam.cc (rest_collision_callback): use local beam
16798 * input/regression/stem-stemlet.ly: new file.
16800 * lily/stem.cc (add_head): store rests as well.
16802 * scm/define-grob-properties.scm (all-user-grob-properties): add
16805 * lily/stem.cc: store rests as well.
16807 * input/regression/new-slur.ly: mention forcing.
16809 2004-11-04 Werner Lemberg <wl@gnu.org>
16811 * Documentation/user/*: A new round of layout fixes and document
16814 2004-11-04 Heikki Junes <hjunes@cc.hut.fi>
16816 * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16818 2004-11-04 Jan Nieuwenhuizen <janneke@gnu.org>
16820 * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16822 2004-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
16824 * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16826 * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16828 * lily/main.cc (main): Invoke identify.
16830 * scm/lily.scm (postscript->pdf): Remove progress newline.
16831 Write progress to stderr.
16833 * lily/paper-book.cc (output): Remove progress newline.
16835 * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16836 gettext on user messages, and remove whitespace.
16838 * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16840 * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16841 argv[0] (Thomas Scharkowski).
16843 * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16844 call (carlyannehorse). Also check for mf and mf-nowin. Add check
16845 for ec-fonts-mtraced.
16847 * GNUmakefile.in (builddir-exec): Add symlink tex/out. Fixes
16848 --srcdir build (Bertalan).
16850 * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16851 headers and library too (Laura Conrad).
16853 * Documentation/topdocs/INSTALL.texi (Top): Mention development
16854 package for guile too (Laura Conrad).
16856 * lily/main.cc (usage): Typo.
16858 2004-11-02 Werner Lemberg <wl@gnu.org>
16860 * Documentation/user/notation.ly: More fixes to improve appearance.
16862 * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16863 better output for multicolumn tables.
16865 2004-11-01 Mats Bengtsson <mabe@s3.kth.se>
16867 * lily/main.cc (dir_info): Fixed typo in the printouts.
16869 2004-11-01 Werner Lemberg <wl@gnu.org>
16871 * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16873 Set `per_line' to 2; replace hard-coded value with it.
16875 * Documentation/user/*: Many fixes to improve appearance of
16878 2004-11-01 Werner Lemberg <wl@gnu.org>
16880 * Documentation/user/changing-defaults.itely,
16881 Documentation/user/notation.ly,
16882 Documentation/user/programming-interface.itely: Use @/.
16883 Fix formatting of some lilypond snippets and tables.
16885 * scripts/lilypond-book.py (compose_ly): Provide useful default
16886 for LINEWIDTH in `override'.
16888 2004-10-31 Graham Percival <gperlist@shaw.ca>
16890 * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16892 2004-10-31 Werner Lemberg <wl@gnu.org>
16894 Resetting @exampleindent to `5' gives ugly results with texinfo's
16895 DVI output. Use `@format @exampleindent 0 ... @end format' instead
16896 (if not quoting) to change @exampleindent only locally.
16898 * scripts/lilypond-book.py (NOQUOTE): New variable.
16899 (output) [LATEX]: Remove AFTER and BEFORE.
16900 [TEXINFO]: Remove AFTER and BEFORE.
16901 Fix QUOTE and VERBATIM pattern.
16902 Add NOQUOTE pattern.
16903 (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16905 [output_texinfo]: Use NOQUOTE.
16907 2004-10-31 Graham Percival <gperlist@shaw.ca>
16909 * Documentation/user/changing-defaults.itely: clarify paper
16910 size commands with correct info.
16912 * Documentation/user/lilypond-book.itely: add more docs for
16913 filename extensions.
16915 2004-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
16917 * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16918 (PATCH_LEVEL): start 2.5.0.