1 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
5 * VERSION (PACKAGE_NAME): release 2.9.26
7 * buildscripts/output-distance.py (test_basic_compare): add
9 (FileLink.multi_img_cell): new function, glob multi-page png
12 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
14 * po/lilypond.pot: update.
16 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
18 * Documentation/user/global.itely (File structure): remove
21 * lily/parser.yy (FIXME): remove ADDQUOTE
23 * Documentation/user/global.itely (Extracting fragments of
24 notation): new node, about clip systems.
26 * Documentation/user/lilypond-book.itely (Many quotes of a large
27 score): ref to clip systems.
29 * Documentation/user/instrument-notation.itely (Entering lyrics):
30 add note about lyric ties and required font.
32 * lily/open-type-font.cc (glyph_list): format errors.
34 * Documentation/user/programming-interface.itely (Scheme
35 procedures as properties): more doco on simple-closure and scheme
37 (Input variables and Scheme): use lilypond[verbatim], document
40 * Documentation/user/page.itely (Displaying spacing): use \book
41 explicitly, so arrows show .
42 (Line breaking): add note about Forbid_line_break_engraver
44 * Documentation/user/tweaks.itely (Common tweaks): also set length
45 to prevent tie squeezing.
46 (Default files): use @var{}
48 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
49 (Generating LilyPond files): add FOMUS.
51 2006-10-20 Joe Neeman <joeneeman@gmail.com>
53 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
54 Y-offset for TextScript and Script
56 * lily/text-engraver.cc (make_item):
57 * lily/script-engraver.cc (make_script_from_event):
58 remove call to Side_position_interface::set_axis since all scripts
59 now have this set by default
62 * lily/prob.cc: use variables
64 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
66 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
67 at typography, rather analyse stream event duration.
69 * Documentation/user/page.itely (Page formatting): set a6 paper
70 for system separator example.
72 * lily/arpeggio.cc (Module): idem.
74 * lily/accidental-placement.cc: add script-priority property.
76 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
78 * lily/ttf.cc (print_trailer): if all else fails: use
79 glyphIndexXXXX as glyph name. Fixes #117.
81 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
82 entry if cmap contains glyph.
83 (get_index_to_charcode_map): remove from Pango_font class, use
84 global filename -> font mapping.
85 (get_glyph_index_name): new function.
86 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
89 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
91 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
94 * scm/define-grob-properties.scm (all-user-grob-properties):
95 remove outdated doc. Fixes #116
97 * lily/completion-note-heads-engraver.cc (process_music): always
98 clone input events; otherwise we may overwrite input 'duration
101 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
104 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
107 * VERSION (PATCH_LEVEL): bump version.
109 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
111 * lily/engraver.cc (internal_make_grob): use variables.
113 * flower/string-convert.cc (dec2double): clean-up warnings.
115 * configure.in (CXXFLAGS): add -Werror.
117 * VERSION (PACKAGE_NAME): release 2.9.25
119 2006-10-18 Joe Neeman <joeneeman@gmail.com>
121 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
122 line even if we precede a forced break.
124 * lily/optimal-page-breaking.cc (try_page_spacing): square line
125 forces too. Make page-spacing weight default to 10 because the
126 changes to vertical springs decreased the page force/line force
127 proportions. Also, take the average of line force and page force
128 instead of just the sum.
130 * lily/constrained-breaking.cc (initialize): make the stiffness
131 of the vertical springs depend on the height of the system. This
132 prevents pages with only a few large systems from getting huge
135 * Documentation/user/page.itely (Page formatting): document the
136 change in default page-spacing-weight
138 * lily/include/constrained-breaking.hh: initialise bottom_padding_
140 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
142 * input/typography-demo.ly (melody): remove superfluous slur.
144 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
145 add piano-pedal-script-interface
147 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
149 * scripts/lilypond-book.py: DocBook support.
151 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
153 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
155 (stop_translation_timestep): set bound to currentMusicalColumn if
156 not set yet. Fixes #102
158 * lily/piano-pedal-bracket.cc: formatting.
160 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
162 * lily/piano-pedal-align-engraver.cc: new class
163 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
166 2006-10-18 Heikki Junes <hjunes@gmail.com>
168 * po/fi.po: Update Finnish translation (before the next release).
170 2006-10-17 Joe Neeman <joeneeman@gmail.com>
172 * lily/system.cc (get_paper_system): reinstate the backwards-
173 compatible page breaking for the old page breaker.
175 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
177 * lily/recording-group-engraver.cc: removed
179 * lily/context.cc, lily/translator-group.cc: Don't touch
180 Context::implementation_ if it's null
182 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
184 * scm/paper.scm: only use left-margin if defined.
186 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
188 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
190 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
191 strokeFingerOrientations
193 * lily/script-column.cc (row_before_line_breaking): also handle
194 accidentals and arpeggios in horizontal script stacking.
196 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
199 * input/regression/script-stack-horizontal.ly: trim.
201 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
203 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
206 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
207 'text if string argument.
209 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
211 * scm/define-context-properties.scm
212 (all-user-translation-properties): change to strokeFingerOrientations
214 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
216 * lily/parser.yy: remove debug output
218 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
220 * ly/paper-defaults.ly: set left/right margin.
222 * scm/paper.scm (set-paper-dimensions): use left-margin and
223 right-margin for computing linewidth.
225 * Documentation/topdocs/NEWS.tely (Top): idem.
227 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
230 * scm/define-markup-commands.scm (tied-lyric): increase negative
231 space: space syllables tighter.
233 * VERSION (PATCH_LEVEL): bump version.
235 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
238 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
240 * COPYING: further clarification
242 * VERSION: release 2.9.24
244 * input/regression/script-stack-horizontal.ly: add version.
246 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
248 * input/regression/lyric-tie.ly (texidoc): use different words.
250 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
252 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
254 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
255 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
257 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
259 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
261 * Doxyfile: remove file.
263 * scm/define-grob-interfaces.scm (string-finger-interface): add
264 string-finger-interface
266 * lily/general-scheme.cc (LY_DEFINE): move
267 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
269 * Documentation/topdocs/NEWS.tely (Top): add note for
270 string-finger feature.
272 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
275 * scm/output-lib.scm (string-finger::calc-text): read 'digit
278 * input/regression/script-stack-horizontal.ly: new file.
280 * ly/engraver-init.ly: add Script_row_engraver.
282 * lily/script-column.cc (order_grobs): refactor: separate axis
284 (row_before_line_breaking): new function.
286 * lily/script-row-engraver.cc (Script_row_engraver): new file.
288 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
290 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
292 * Documentation/user/instrument-notation.itely: Cleanup: Remove
293 annoying skip notes from mensural ligature example. Update
294 @refbugs for ligatures and mensural ligatures.
296 * lily/coherent-ligature-engraver.cc,
297 lily/include/coherent-ligature-engraver.hh,
298 lily/mensural-ligature-engraver.cc,
299 lily/vaticana-ligature-engraver.cc: Revise code for item
300 reparentizing. There should now be less programming_error
303 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
305 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
306 Maintenance bugfix: Don't create empty Stencil (), but empty box
307 instead. This fix should eliminate some programming_error
310 * ly/engraver-init.ly (MensuralStaff): Set default accidental
313 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
314 \layout block _before_ score.
316 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
318 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
320 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
322 2006-10-13 Erlend Aasland <erlenda@gmail.com>
324 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
326 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
328 * VERSION (PATCH_LEVEL): bump version.
330 * COPYING: clarify exception note.
332 * lily/main.cc: remove remark about "COPYING".
334 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
335 system-count starts at 0 for each clip-region. Change name to
336 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
337 layout block, per score.
339 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
341 * lily/input-smob.cc: add equal_p for Input
343 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
346 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
348 * lily/prob.cc: Add equal_p predicate for Prob
350 * lily/translator.cc: small cleanup
352 * scm/document-music.cc: use data from translator listener
353 registration to generate documentation for event classes
355 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
357 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
359 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
361 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
363 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
365 * Documentation/topdocs/INSTALL.texi: Thinko.
367 * .cvsignore: Update.
369 * lexer-gcc-3.1.sh: Remove.
371 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
372 Update anonymous cvs access. Remove comment about gcc 3.0.4.
374 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
376 * VERSION: release 2.9.23
378 * lily/paper-column-engraver.cc (stop_translation_timestep): also
381 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
383 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
385 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
387 * input/regression/clip-systems.ly (Notes): new file.
389 * scm/lily.scm (define-scheme-options): add clip-systems option.
391 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
393 (dump-stencil-as-EPS): move bbox calculation from previous
395 (output-framework): use -dclip-systems
397 * scm/lily-library.scm (filtered-map): new function
399 * scm/framework-ps.scm (clip-system-EPS): new function.
400 (clip-system-EPSes): new function.
402 * lily/paper-column.cc: add rhythmic-location to interface
404 * scm/define-grob-properties.scm (all-user-grob-properties): add
405 rhythmic-location property.
407 * scm/clip-region.scm: new file: rhythmic-location data type and
408 system-clipped-x-extent function.
410 * ly/init.ly: use (scm clip-region)
412 * lily/paper-column-engraver.cc (stop_translation_timestep): set
413 rhythmic-location for paper column grobs.
415 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
417 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
419 * ly/engraver-init.ly: Remove obsolete comment on
422 * Documentation/user/instrument-notation.itely: Tune Ancient
423 Articulations figure, such that the episem actually shows.
425 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
426 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
428 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
431 2006-10-12 Graham Percival <gpermus@gmail.com>
433 * Documentation/user/ {some}: minor edits that were lost somehow.
435 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
437 * VERSION (PACKAGE_NAME): bump version.
439 * input/regression/lyric-tie.ly (texidoc): new file.
441 * Documentation/topdocs/NEWS.tely (Top): add new feature.
443 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
445 * scm/define-markup-commands.scm (tied-lyric): new function: split
446 string along ~ and reattach with U+203F (tie character) and
449 * scm/output-lib.scm (lyric-text::calc-text): new function.
451 * lily/lyric-engraver.cc (process_music): don't set 'text.
453 * scm/output-lib.scm (string-finger::calc-text): new function
454 (lyric-text::print): new function.
456 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
457 generic for fingering & string number. Use for string-finger.
459 * scm/define-music-types.scm (music-descriptions): add
462 * lily/fingering-engraver.cc (listen_string_finger): new function
464 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
466 * scm/define-context-properties.scm
467 (all-user-translation-properties): add stringFingerOrientations
469 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
471 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
472 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
474 * lily/dots.cc: Added style property for dots.
476 * mf/parmesan-heads.mf: Fix typo in comment.
478 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
479 adding longa head to feta font and removing obsolete default
482 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
484 * scm/output-lib.scm (fingering::calc-text): use origin
485 event-property, not music-property.
487 * lily/lilypond.rc.in: spell my name correctly.
489 2006-10-10 Joe Neeman <joeneeman@gmail.com>
491 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
492 already have a non-empty extent. Fixes estimation for Hara-kiri
495 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
497 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
500 * lily/ligature-engraver.cc: Remove unused #include.
502 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
503 Bugfix: remove method check_for_prefix_loss(Item *) from global
504 namespace to avoid namespace pollution.
506 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
508 * VERSION: release 2.9.22
510 * ly/generate-documentation.ly: update option name.
512 * lily/dynamic-text-spanner.cc (print): revert fix.
514 * scm/define-grob-interfaces.scm
515 (trill-pitch-accidental-interface):
516 add trill-pitch-accidental-interface
518 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
519 dereference if it's really a duration.
521 * lily/figured-bass-engraver.cc (process_music): clear spanner if
522 useBassFigureExtenders is not set.
523 (listen_bass_figure): record as new event if
524 useBassFigureExtenders not set. Fixes #103.
526 * scm/stencil.scm (circle-stencil): don't center stencil argument,
527 instead: move circle. Fixes #107.
529 * scm/define-grobs.scm (all-grob-descriptions): set
530 allow-loose-spacing for PaperColumn and
531 NonMusicalPaperColumn. Kludge for #110.
533 * lily/spaceable-grob.cc: add allow-loose-spacing property.
535 * lily/spacing-determine-loose-columns.cc (is_loose_column):
536 allow-loose-spacing property.
538 * scm/define-markup-commands.scm (postscript): gsave & grestore
539 around embedded PS. Do setlinewidth too. Fixes #109.
541 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
543 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
544 code. This patch fixes ligature brackets that were not at all
547 2006-10-08 Graham Percival <gpermus@gmail.com>
549 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
551 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
553 * scm/define-context-properties.scm: clarified docs (bug 91).
555 * Documentation/user/basic-notation.itely: document volta brackets
556 not aligning (bug 63).
558 * Documentation/user/ global.itely invoking.itely: ignore or
559 add warnings about texstr.
561 2006-10-08 John Mandereau <john.mandereau@free.fr>
563 * po/fr.po: update translation.
565 * po/: update msgids.
567 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
569 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
571 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
573 * Documentation/user/page.itely (Two-pass vertical spacing): add
574 documentation for two-pass spacing technique.
576 2006-10-06 Graham Percival <gpermus@gmail.com>
578 * Documentation/user/convert-ly.txt: new file; new
579 storage place for this file (moved from bugs/ CVS).
581 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
583 * lily/note-head.cc: Fixed programming_error message.
585 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
587 * scm/define-grobs.scm (pure-conversion): move pure-callback
590 * scm/script.scm (default-script-alist): set avoid-slur for turn,
591 marcato, stopped, thumb.
593 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
595 * lily/completion-note-heads-engraver.cc (process_music): don't
596 skimp on memory usage.
598 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
601 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
602 parenthesis item. This fixes premature Y-extent triggering. Fixes
605 * VERSION (PATCH_LEVEL): bump version.
607 2006-10-04 Graham Percival <gpermus@gmail.com>
609 * Documentation/user/advanced-notation.itely: added
610 info about instrument names for piano or other contexts,
613 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
615 * mf/feta-bolletjes.mf (solfa_quarter_width): use
616 solfa_base_notewidth as unit for non-DO-notes too.
618 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
620 * VERSION: release 2.9.21
622 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
625 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
627 * python/lilylib.py (progress): Minor fix.
629 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
631 * lily/note-name-engraver.cc: doc engraver.
633 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
635 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
637 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
640 * lily/stem-engraver.cc (make_stem): don't set duration-log
642 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
643 write snippet-names binary.
645 * python/lilylib.py (system): use os.system for mingw32
647 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
650 * scm/backend-library.scm: update email address.
652 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
655 * scm/define-grobs.scm (all-grob-descriptions): use callback to
658 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
659 handle dot creation separately.
661 * lily/tab-note-heads-engraver.cc (process_music): idem.
663 * lily/drum-note-engraver.cc (process_music): idem.
665 * lily/note-heads-engraver.cc (process_music): idem.
667 * lily/rest-engraver.cc: don't set duration-log.
669 * scm/output-lib.scm (string-number::calc-text): new function.
670 (note-head::calc-duration-log): new function.
672 * lily/fingering-engraver.cc (make_script): remove 'text setting.
674 * scm/output-lib.scm (fingering::calc-text): new function.
676 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
678 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
679 and include-eps-font -> include-eps-fonts
681 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
683 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
685 * lily/timing-translator.cc: list properties.
686 (start_translation_timestep): update internalBarNumber too.
688 * scm/define-context-properties.scm
689 (all-user-translation-properties): add internalBarNumber.
691 * input/regression/spacing-no-note.ly: new file.
693 * buildscripts/output-distance.py (link_file): verbosity for OSError.
695 * lily/book.cc: #include cleanup.
697 * lily/include/lily-guile-macros.hh: add assert to
698 scm_or_str2symbol(SCM).
700 * VERSION (PATCH_LEVEL): bump version.
702 * lily/spacing-spanner.cc (musical_column_spacing): handle
703 musical->nonmusical spacing case, where there is no spacing
704 wish. Fixes issue #61.
706 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
707 (pango_item_string_stencil): use logical rect horizontally (to
708 preserve spaces), ink_rect vertically (for time signatures).
710 * lily/font-metric.cc (word_stencil): new interface function
712 * input/regression/utf-8-mixed-text.ly: new file.
714 * lily/percent-repeat-engraver.cc (listen_percent): remove
717 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
718 non-dynamic scripts. Fixes #30.
720 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
722 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
724 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
725 SCM_UNDEFINED for non-existent data.
727 * lily/side-position-interface.cc (general_side_position): allow
728 optional current_offset argument for chaining, so combinations of side-position
729 and outside slur callback don't add up. Fixes issue #92.
731 * lily/pango-font.cc (pango_item_string_stencil): use
732 logical_rect. This prevents spaces after words from disappearing,
735 * VERSION: release 2.9.20
737 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
739 * scm/define-grob-properties.scm (all-user-grob-properties):
740 mention stencil as user settable.
742 2006-10-02 Joe Neeman <joeneeman@gmail.com>
744 * Documentation/user/page.itely (Page formatting):
745 document auto-first-page-number
747 * lily/page-breaking.cc (find_chunks_and_breaks):
748 * lily/paper-score.cc (calc_breaking): Follow changes to the
749 Constrained_breaking interface
751 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
752 here backwards, as an optimisation
753 (initialize): new function; move most of the code in resize () here
754 (combine_demerits): cache ragged_right_
755 (Constrained_breaking): constructor now takes the Paper_score
757 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
759 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
760 avoid parser lookahead for 0-ary functions.
762 * lily/translator.cc: Extract event classes from
763 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
765 2006-10-02 Heikki Junes <hjunes@gmail.com>
767 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
770 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
772 * scm/layout-page-layout.scm (page-breaking-wrapper): new
773 function. Call the page breaking function selected in the
774 `page-breaking' \paper variable, then the post processing function
775 chosen using the `page-post-process' \paper variable.
776 (line-height): new function. Return the height of a system.
777 (line-minimum-position-on-page): new function. Return the position
778 of a system on page (using the previous line position), only
779 considering between system padding.
780 (stretchable-line?): new function. Says whether a line can be
781 stretched (ie. is not a title nor a single staff system).
782 (page-maximum-space-left): new function. Computes space left on a
783 page, when all systems are separated by their padding.
785 * lily/page-breaking.cc (breaking::make_pages): Move page post
786 processing function call to page breaking wrapper (common to all
789 * lily/paper-book.cc (book::pages): call the page breaking
790 wrapper, instead of the page breaker directly
792 * ly/paper-defaults.ly: Add \paper variables for page breaking
793 wrapper and page post processing function. Make
794 `write-page-layout' value depend on the 'dump-tweaks option. Add a
795 `system-maximum-stretch-procedure' variable for holding a function
796 computing the maximum stretch a system allows.
798 * scm/layout-page-dump.scm (write-page-breaks): computes the
799 stretch to apply to systems on a page to minimize left
800 space. Dump this stretch length.
802 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
803 the system-stretch property of the tweak data to stretch the
805 (includePageLayoutFile): Void function which includes the
806 generated page-layout file if it exists and if the page layout
807 dumping is not asked.
808 (scoreTweak): if the score tweak named by the argument exists,
811 2006-10-01 Joe Neeman <joeneeman@gmail.com>
813 * lily/page-spacing.cc (compress_lines, uncompress_solution):
814 handle correctly the case where there are multiple \noPageBreaks
817 2006-09-30 Laura Conrad <lconrad@laymusic.org>
819 * abc2ly.py adds segno (S) and Coda (O) to articulations.
821 * abc2ly.py fix so that entering " -- " will translate to a -- in
822 the lilypond instead of a " - - "
824 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
826 * lily/align-interface.cc: fix typo
828 * lily/dynamic-text-spanner.cc (print): Add a special case for
829 trill spanner right sides.
831 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
833 * lily/align-interface.cc (get_extents_aligned_translates): add
834 support for padding variable.
836 * lily/break-align-interface.cc (self_align_callback): oops: use
837 loop variable in guard.
839 * input/regression/repeat-percent-grace.ly: new file.
841 * lily/percent-repeat-engraver.cc (start_translation_timestep):
842 remember first currentCommandColumn of a grace run. Fixes issue 70.
844 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
845 move class definition to CC file.
847 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
849 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
850 measure-long repeats.
852 * flower/include/international.hh: include stdarg.h
854 2006-09-30 Joe Neeman <joeneeman@gmail.com>
856 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
857 put_systems_on_pages to return an empty result, we need to assign
858 demerits properly in that case.
859 (put_systems_on_pages): Make the number of pages depend on the
860 evenness of page_number. Add auto-first-page-number.
861 (calc_subproblem): ensure that the page-number is even for the
862 left-hand page. Warn if the first page-turn doesn't fit onto the
863 first (right-hand) page.
865 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
866 (min_page_count): make this publicly accessible
867 (min_page_count): fix a bug when there are forced page breaks that
868 was introduced when I made this loop run backwards
869 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
870 replace space_systems_on_min_pages with these two. The logic in
871 space_systems_on_min_pages was getting too convoluted and is better
872 contained in page-turn-page-breaking.
874 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
876 (breakable_column): typo
878 * lily/source-file.cc (get_line): fix off-by-one error
879 and clean up some of the logic
881 2006-09-29 Joe Neeman <joeneeman@gmail.com>
883 * lily/page-breaking.cc (make_pages): honour the first-page-number
886 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
888 * VERSION (PACKAGE_NAME): bump version.
890 2006-09-26 Pal Benko <benko.pal@gmail.com>
892 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
893 (the latter is the same as petrucci-f which is kept for compatibility)
895 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
897 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
899 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
901 * lily/global-context.cc (run_iterator_on_me): break out of loop
902 if moment doesn't increase.
904 * scm/define-grob-properties.scm (all-user-grob-properties): add
907 * lily/accidental.cc (after_line_breaking): read forced property.
909 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
912 * input/regression/accidental-forced-tie.ly: new file.
914 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
916 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
918 * lily/figured-bass-engraver.cc: only listen to rest events if
919 ignoreFiguredBassRest is not set.
921 * scm/define-context-properties.scm
922 (all-user-translation-properties): add ignoreFiguredBassRest property
924 2006-09-24 Joe Neeman <joeneeman@gmail.com>
926 * lily/paper-book.cc (get_system_specs):
927 (set_system_penalty): fix breakbefore.
928 We used to set a penalty on the system after the break, now we
929 set a permission on the system before the break
931 * lily/grob-property.cc: add scm debugging hooks into
932 property modification
934 * lily/context-property.cc:
936 rename make_foo_from_properties to internal_make_foo and
937 move it from context-property.cc to a member function of
940 * lily/include/lily-guile-macros.hh:
941 overload ly_symbol2scm macro so that there is no more need
944 * lily/volta-repeat-iterator.cc:
945 * lily/tweak-engraver.cc:
946 * lily/tuplet-bracket.cc:
947 * lily/span-bar-engraver.cc:
948 * lily/script-engraver.cc:
949 * lily/prob-scheme.cc:
950 * lily/pointer-group-interface.cc:
952 * lily/grob-scheme.cc:
953 * lily/grob-property.cc:
955 * lily/context-property.cc:
956 * lily/break-substitution.cc:
957 * lily/break-align-engraver.cc:
958 * lily/axis-group-interface.cc:
959 * lily/align-interface.cc:
960 remove calls to internal_FOO
962 * lily/system-start-delimiter-engraver.cc:
963 * lily/parenthesis-engraver.cc:
964 * lily/accidental-engraver.cc:
965 remove calls to make_foo_from_properties
967 2006-09-23 Graham Percival <gpermus@gmail.com>
969 * Documentation/user/programming-iterfaces.itely: fix
970 def-music-function -> define-music... leftover.
972 2006-09-23 Joe Neeman <joeneeman@gmail.com>
974 * lily/page-spacing.cc (min_page_count): by running the loop
975 backwards, we can calculate ragged_last properly.
977 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
979 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
980 printfirst-page-number -> print-first-page-number
982 * python/convertrules.py: corresponding rule.
984 * Documentation/user/page.itely (Page formatting): Document the
985 default values of all page layout parameters.
987 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
989 * lily/lexer.ll: remove limitation on music function arity. New
990 mode extratoken, which inserts extra EXPECT_* tokens after
991 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
993 * lily/parser.yy: Change grammar for music function accordingly.
995 * lily/include/lily-parser.hh: New method get_state, new member
996 hidden_state. Works around a problem when parser fetches
997 MUSIC_FUNCTION token but not the following EXPECT_* token.
999 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1002 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1003 references to Music; use ASSIGN_EVENT_ONCE everywhere
1005 * lily/grob-info.cc: junk *music_cause
1007 * lily/music.cc: copy eventified articulations to stream event
1009 * lily/part-combine-iterator.cc: Cleanup using enums
1011 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1014 * lily/include/engraver.hh: Junk music.hh include
1016 * lily/stream-event.cc: Changed constructors
1018 2006-09-21 Graham Percival <gpermus@gmail.com>
1020 * Documentation/user/tweaks.itely (Fitting music onto fewer
1021 pages): change settings to avoid warning messages.
1023 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1025 * Documentation/user/tweaks.itely (Fitting music onto fewer
1026 pages): Add between-system-space setting.
1028 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1030 * lily/accidental-placement.cc (calc_positioning_done): don't
1031 trigger Y-extent calculation too early. Use pure_height instead.
1033 * lily/scale.cc (LY_DEFINE): new file.
1035 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1037 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1038 that happen at the start of a score: having a zero-length
1039 chunk was messing up min_system_count calculations.
1041 * lily/source-file.cc (get_line): lower_bound, not
1042 binary_search. Fixes problem where point-and-click would
1043 always point to the first line.
1045 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1047 * lily/accidental-placement.cc (calc_positioning_done): also put
1048 stems into accidental support.
1050 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1053 * scm/script.scm (default-script-alist): avoid-slur and
1054 slur-padding for portato script.
1056 * lily/stem-tremolo.cc (translated_stencil): new function.
1057 (height): use new function. Fixes tremolos on whole notes.
1059 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1062 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1064 * scripts/abc2ly.py (try_parse_comment): idem.
1066 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1067 bar_string iso. string.find()
1071 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1074 2006-09-18 Graham Percival <gpermus@gmail.com>
1076 * Documentation/user/basic-notation.itely: add bug
1077 warning about ties and octavation/clef.
1079 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1081 * VERSION (PACKAGE_NAME): release 2.9.18
1083 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1085 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1086 figure out midi file names right here.
1088 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1090 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1092 * scm/backend-library.scm: option naming: gs-font-load*s*
1094 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1097 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1099 * scm/define-music-types.scm (music-descriptions): remove
1100 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1101 Music::to_event doesn't complain.
1103 * lily/accidental-placement.cc (ape_compare):
1104 * lily/semi-tie.cc (compare):
1105 * lily/note-column.cc (shift_compare): replace by XXX_less
1107 * lily/tie-formatting-problem.cc (set_chord_outline):
1108 * lily/tie-column.cc (calc_positioning_done):
1109 * lily/system.cc (post_processing)
1111 * lily/stem.cc (note_head_positions)
1112 (calc_positioning_done):
1113 * lily/spanner.cc (do_break_processing)
1114 (find_broken_piece):
1115 * lily/span-bar.cc (print):
1116 * lily/semi-tie-column.cc (calc_positioning_done):
1117 * lily/rest-collision.cc (calc_positioning_done):
1118 * lily/program-option.cc (get_help_string):
1119 * lily/note-collision.cc (get_clash_groups):
1120 * lily/new-fingering-engraver.cc (position_scripts):
1121 * lily/keyword.cc (Keyword_table):
1122 * lily/hara-kiri-group-spanner.cc (request_suicide):
1123 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1124 * lily/accidental-placement.cc (calc_positioning_done):
1126 * lily/beam.cc (get_beam_segments):
1127 * lily/grob-array.cc (remove_duplicates):
1130 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1131 ragged-last-bottom = ##f (test the new page breaker)
1133 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1135 * scm/define-context-properties.scm
1136 (all-internal-translation-properties): remove properties that
1137 were used to communicate page-turn stuff to the paper-column
1140 * lily/lily-guile.cc (robust_scm2string): new function
1142 * lily/paper-column-engraver.cc: Clean up page turn stuff
1144 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1145 instead of cluttering up paper-column-engraver.cc
1147 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1149 * scm/layout-page-dump.scm (scm): export utility function names,
1150 to allow user writing cutsom dumping functions.
1152 * scm/layout-page-layout.scm: export utility function names to
1153 enable custom page breaking function writing. Tabify.
1154 (line-next-space): use ?-suffix only for predicates
1155 (page-maximum-space-to-fill): new function. Return the space
1156 between first and bottom system of a page, to give to
1158 (space-systems): use a space-to-fill argument (for instance as
1159 computed by page-maximum-space-to-fill) instead of computing
1160 internaly this space with the page height. That way, the caller
1161 can adjust the space to use.
1162 (make-page-from-systems, walk-paths): compute space to fill before
1163 calling space-systems.
1165 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1167 * scm/script.scm (default-script-alist): set paddings for every
1168 type here, increase for portato mark.
1170 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1173 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1175 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1176 use spanner::set-spacing-rods
1178 * lily/note-column.cc: reformat.
1180 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1181 step positioning for note/rest combinations.
1183 * input/regression/rest-note-collision.ly: new file.
1185 * scm/define-grobs.scm (all-grob-descriptions): add
1188 * flower/include/std-vector.hh: switch off again.
1190 * VERSION (PATCH_LEVEL): bump to 2.9.18
1192 * flower/include/std-string.hh: idem.
1194 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1196 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1198 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1201 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1203 * Documentation/user/page.itely: update page breaking documentation
1205 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1207 * lily/note-collision.cc (calc_positioning_done): only access
1208 first head if available.
1210 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1212 * scm/framework-ps.scm (output-preview-framework): use new name.
1214 * lily/program-option.cc (internal_set_option): use new names.
1216 * Documentation/user/SConscript (lilypond_book_flags): update -d
1219 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1220 output into other programs): new variable names.
1222 * scm/lily.scm (define-scheme-options): uniformize var names.
1224 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1225 tuplets_ is non-empty before popping.
1227 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1229 * lily/spanner.cc (find_broken_piece):
1230 * lily/spacing-spanner.cc (get_columns):
1231 * lily/source-file.cc (get_line):
1232 * lily/simple-spacer.cc (get_column_description):
1233 * lily/keyword.cc (lookup):
1234 use the new binary search.
1236 * flower/include/std-vector.hh: replace binary_search with
1237 a more STL-like version
1239 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1241 * lily/tie-performer.cc: remove unused last_event_ property.
1242 (class Tie_performer): add now_tied_heads_ property for
1243 partially-tied heads.
1244 (acknowledge_audio_element): when adding an Audio_note, put the
1245 note in now_tied_heads_ if the audio note is partially tied.
1246 (stop_translation_timestep): always include entries in
1247 now_tied_heads_ in heads_to_tie_.
1249 * lily/drum-note-performer.cc (process_music): look for tie-events
1250 in the articulations; pass to Audio_note constructor.
1252 * lily/note-performer.cc (process_music): look for tie-events in
1253 the articulations; pass to Audio_note constructor.
1255 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1258 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1259 include initializer in constructor.
1261 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1263 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1264 unless they are breakable. This fixes discrepancies between the forces
1265 calculated here and the forces calculated in get_line_configuration.
1267 * lily/grob.cc (pure_relative_y_coordinate): fix some
1268 mis-estimation that was happening with piano staves.
1270 * lily/constrained-breaking.cc (resize): don't choke if we get a
1271 measure that won't fit on a line.
1272 (combine_demerits): don't consider uniformity when ragged
1274 * lily/page-spacing.cc (solve): why the f* were there two of these?
1275 (calc_subproblem): properly handle the case where a system is taller
1278 * lily/system.cc (get_paper_system): ensure that all the permissions
1279 and penalties are passed to the paper systems.
1281 * lily/page-breaking.cc (create_system_list): support system-count.
1283 * scm/define-grobs.scm (pure-print-callbacks): add
1284 ly:script-interface::print
1286 * lily/page-spacing.cc (min_page_count): fix calculation of min
1287 pages if we are ragged and there are non-zero springs.
1289 * scm/layout-page-layout.scm: if the pure-height estimates are under
1290 the real height, allow space-systems to ignore padding if it is
1291 needed in order to fit the systems on one page
1293 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1295 (solve): fix performance problem. Make sure we always get at least
1298 * lily/page-breaking.cc (make_pages): include write-page-breaks
1301 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1303 * scm/define-grobs.scm: add the new slur-callback
1304 fix pure-relevant to not exclude grobs whose extent is already
1307 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1310 * lily/slur.cc (pure_height): new callback to estimate the height
1313 2006-09-02 Graham Percival <gpermus@gmail.com>
1315 * Documentation/user/invoking.itely: small update on
1316 MacOS X notes; thanks Trevor!
1318 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1320 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1322 * lily/lexer.ll: accept EOF in all states.
1324 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1326 * lily/source-file.cc (Source_file): always 0-terminate character
1327 array, to prevent Flex from barfing.
1329 * lily/global-context.cc (get_output): robustness: don't crash if
1330 no Score context found.
1332 * lily/include/book.hh (class Book): idem.
1334 * lily/include/context-def.hh (struct Context_def): idem.
1336 * lily/include/score.hh (class Score): don't derive from Input.
1338 * lily/book.cc (Book): add a copy ctor.
1340 * buildscripts/output-distance.py (FileLink.calc_distance): count
1341 orphans in distance too.
1343 * python/midi.c (midi_parse_track): robustness: don't read past
1346 * ly/performer-init.ly: add Control_track_performer, move
1347 Tempo_performer and Time_signature_performer to Score.
1349 * lily/score-performer.cc (acknowledge_audio_elements): override
1350 from base class: add to audio-columns
1352 * lily/control-track-performer.cc (add_text): new file: generate
1355 * lily/performance.cc: move output_header_track to
1356 Control_track_performer ()
1358 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1360 * lily/include/midi-item.hh (class Midi_channel_item): insert
1361 class into hierarchy, for items that can have a channel setting. Dehungarify.
1363 * lily/include/performer.hh (class Performer): remove
1364 play_element(); move functionality into announce/acknowledge.
1366 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1368 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1369 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1371 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1373 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1376 * lily/all-font-metrics.cc: remove TFM support.
1378 * lily/include/tfm.hh: remove TFM support, TFM reader.
1380 * lily/include/binary-source-file.hh: remove Binary_source_file.
1382 2006-08-27 Graham Percival <gpermus@gmail.com>
1384 * Documentation/topdocs/NEWS.itely: add @c marker for
1385 stuff I've processed.
1387 * Documentation/user/ various: info from NEWS.
1389 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1391 * lily/paper-column-engraver.cc (finalize): Oops, this change
1392 should have gone in on 2006-08-23
1394 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1396 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1397 quotes to quote arguments. Fixes Windows problem.
1399 * python/lilylib.py (progress): idem
1401 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1403 * scripts/musicxml2ly.py: fix for importing
1404 minor key signatures from MusicXML. (Phillip Kirlin)
1406 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1408 * python/musicxml.py:
1409 (Attributes.get_key_signature): now correctly retrieves mode from
1412 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1414 * lily/parser.yy (output_def_body): take ownership of identifier
1417 * Documentation/user/advanced-notation.itely (Metronome marks):
1418 update use of \tempo in \midi.
1420 * VERSION: release 2.9.16
1422 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1424 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1427 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1429 * input/regression/tie-chord-partial.ly: clarify example.
1431 * scm/define-music-properties.scm (all-music-properties): remove
1434 * ly/music-functions-init.ly: remove \untied.
1436 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1437 stream events and music events.
1438 (stop_translation_timestep): search acknowledged heads for
1441 * input/regression/tie-chord-partial.ly: new file.
1443 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1444 for \char markup command.
1446 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1448 * scm/define-music-types.scm (music-descriptions): consistency:
1449 Use solo-{one,two}-event iso. solo-[12]-event.
1451 * lily/part-combine-engraver.cc (process_music):
1452 Use solo-{one,two}-event iso. solo-[12]-event.
1454 * ly/declarations-init.ly (partCombineListener): add Timing as
1457 * flower/std-string.cc (string_copy): use copy ()
1459 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1461 2006-08-24 Graham Percival <gpermus@gmail.com>
1463 * Documentation/user/changing-defaults.itely, global.itely,
1464 lilypond-book.itely, page.itely: minor changes from mailist.
1466 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1468 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1471 * scm/define-context-properties.scm
1472 (translator-property-description): robustness: detect type errors
1473 in property definitions.
1475 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1476 after getting it from SCM.
1478 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1481 * lily/include/performer.hh (class Performer): strip get_tempo()
1484 * lily/midi-def.cc: strip file.
1486 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1488 * lily/include/context-def.hh (struct Context_def): use
1489 VIRTUAL_COPY_CONSTRUCTOR().
1491 * lily/source-file.cc: smobification.
1493 * lily/include/source-file.hh (class Source_file): smobify
1494 Source_file. Trim redundant members.
1496 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1497 clones after creation. This plugs a huge memory leak.
1499 * python/convertrules.py (FatalConversionError.sub_tempo):
1500 complete rule for \midi{ \tempo }
1502 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1504 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1506 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1508 * input/regression/optimal-page-breaking-hstretch.ly: test for
1509 ragged-last-bottom also
1511 * lily/paper-column-engraver.cc (finalize): make the end of a score
1512 breakable by default. This is to balance out a change in behaviour
1513 of the page-turn-breaker which no longer makes the end of a score
1516 * lily/paper-book.cc (pages): set the systems_ once the pages are
1519 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1520 Page_breaking interface.
1522 * lily/page-breaking.cc (class Page_breaking): make the interface
1523 more consistent and provide abstractions for dealing with
1526 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1527 algorithm. Use the new interface to Page_breaking.
1529 * lily/page-spacing.cc: better support for ragged-bottom and
1532 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1534 * python/convertrules.py (conv): warning on \tempo{}
1536 * ly/performer-init.ly: set tempoWholesPerMinute.
1538 * ly/midi-init.ly: remove \midi
1540 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1543 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1544 tempoUnitDuration for determining what to print.
1546 * lily/lyric-extender.cc: typo.
1548 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1550 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1553 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1555 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1556 eps-pad-boxes is set.
1558 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1560 * THANKS: update sponsors.
1562 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1564 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1566 * input/regression/tie-chord-untied.ly: new file.
1568 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1570 * scm/define-music-properties.scm (all-music-properties): add
1573 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1575 (headertext_nopics): sanitize no-examples text.
1577 * scm/page.scm (make-page-stencil): don't rely on extents of
1578 page-stencil. This fixes spurious space around .EPS files produced
1579 with the EPS backend.
1581 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1583 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1585 * lily/hara-kiri-engraver.cc (process_music): remember
1586 keepAliveInterfaces after processing \set
1588 * lily/lyric-extender.cc (print): support left/right-padding for
1591 * scm/documentation-generate.scm (string-append): revert lilypond/
1594 2006-08-20 Graham Percival <gpermus@gmail.com>
1596 * Documentation/user/lilypond.tely: clarification to
1597 license presentation (not to actual license).
1599 * Documentation/user/basic-notation.itely,
1600 instrument-notation.itely: minor changes.
1602 * input/ {regression, test}/+.ly: clarification to
1603 text (you can click on examples). Thanks, Mats!
1605 * input/manual/bar-lines.ly: adds ||: repeats.
1607 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1609 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1611 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1613 * Documentation/user/lilypond.tely: strip lilypond/ from info
1614 links, rename to category LilyPond
1616 * lily/pango-font.cc (description_string): new function.
1618 * VERSION: release 2.9.15
1620 * lily/spacing-engraver.cc (stop_translation_timestep): use
1621 Dscho's fix for spacing spanner.
1623 * scm/define-music-types.scm (music-descriptions): use
1624 apply-output-event for ApplyOutputEvent
1626 * lily/output-property-engraver.cc (listen_apply_output): rename
1627 from listen_layout_instruction.
1629 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1632 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1634 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1635 commandline args with contains, split by \n.
1637 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1638 write snippet-names file, call with -dread-file-list. Fixes
1639 command limitations on 64-bit systems.
1641 * input/regression/stencil-color-rotation.ly: new file.
1643 * lily/include/translator.hh (struct Acknowledge_information):
1644 revert: don't use Protected_scm in global objects, as GUILE can't
1645 handle gc_unprotect from automated destructors on MacOS X.
1647 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1648 color, not the original stencil. Fixes combinations of
1649 color/transparency/rotation.
1651 * scripts/lilypond-book.py (main): add --formats=eps for
1654 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1655 crash if spacing_ is nonexistent.
1657 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1659 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1660 \catcode`\@=12 in the LaTeX output.
1662 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1664 * scm/define-music-types.scm (music-descriptions):
1665 use sustain-event iso. sustain-pedal-event.
1667 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1669 * scripts/convert-ly.py: honour the -n command-line switch
1671 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1673 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1674 break specification.
1676 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1678 * Documentation/user: convert-ly the user manual
1680 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1682 * stepmake/aclocal.m4: version check patch (thanks MWD)
1684 * ly/music-functions-init.ly: robustness. Don't crash if
1685 currentBarNumber is not a number.
1687 * VERSION (PATCH_LEVEL): bump.
1689 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
1691 * stepmake/aclocal.m4: better version check; handle fooX.Y
1694 * ly/performer-init.ly: instrument name fixup.
1696 * input/manual/chord-names-jazz.ly (banterProperties):
1697 instrumentName update
1699 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1701 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1703 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1704 function. Use hash tables to check membership.
1706 * lily/general-scheme.cc (LY_DEFINE): new function.
1708 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1710 * lily/include/translator.hh (struct Acknowledge_information): add
1713 * ly/music-functions-init.ly: change name to BreathingEvent
1715 * input/regression/*.ly: apply it.
1717 * python/convertrules.py (conv): better instrumentName conversion
1720 * scm/define-music-types.scm (music-descriptions): add
1721 line-break-event to LineBreakEvent music
1723 * lily/music.cc (to_event): don't crash if music type not set.
1725 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1728 * lily/spacing-engraver.cc (stop_translation_timestep): set
1729 spacing for proportional notation too.
1731 * scm/translation-functions.scm (format-bass-figure): inspect
1734 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1736 2006-08-08 Joe Neeman <joeneeman@gmail.com>
1738 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1740 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1742 * scm/layout-page-layout.scm (make-page-from-systems): new function
1743 (optimal-page-breaks): use the new page-breaking calling convention
1745 * scm/define-context-properties.scm (all-user-translation-properties):
1748 * lily/paper-column-engraver.cc (stop_translation_timestep): add
1749 revokePageTurns functionality. If there is a special barline within
1750 the breakable region, break there instead of at the end of the region.
1752 * lily/paper-book.cc (pages): use the new page-breaking calling
1755 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
1757 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1759 * scripts/lilypond-book.py: insert \sourcefileline command in
1760 output, so lilypond error messages refer to the spot in the
1761 original .lytex / .itely sourcefile.
1763 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1765 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1766 space to next column for distance to fixed col.
1768 * VERSION (PACKAGE_NAME): release 2.9.14
1770 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1773 * lily/accidental-engraver.cc (process_acknowledged): don't create
1774 accidental for trill span event. This fixes spurious accidentals
1777 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
1779 * scm/define-grob-properties.scm (all-user-grob-properties):
1780 Clarify documentation of side-axis and direction. Thanks to Paul
1781 for the inspiration.
1783 * lily/bar-line.cc: Add documentation for "||:" also in the
1784 interface documentation.
1786 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1788 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1790 * lily/paper-column.cc (set_system): new function.
1792 * lily/spacing-engraver.cc (stop_translation_timestep): store
1793 SpacingSpanner refs in Paper_column.
1795 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1796 compute loose clique spacing using GraceSpacing/SpacingSpanner.
1798 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1800 * lily/beam-engraver.cc (listen_beam): add method for
1801 Grace_beam_engraver too.
1803 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
1805 * python/convertrules.py: Fix indentation bug that broke
1806 conversion of files older than 1.3.117.
1807 Fix escape error in the description for 2.9.6.
1809 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
1811 * lily/*-engraver.cc: convert all try_music functions to listen_*
1814 * lily/piano-pedal-engraver.cc: some additional cleanups: use
1815 enums to represent pedal types, and calculate more data statically.
1817 * scm/part-combiner.scm (recording-group-emulate): create a
1818 softcoded substitute for recording-group-engraver.cc.
1820 * lily/music.cc: make a common transpose function for events and
1823 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1824 ManualMelismaEvent, and obsoletes Melisma_translator.
1826 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1828 * input/test/instrument-name-align.ly: update version.
1830 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
1832 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1833 Doc the --pdf flag to lilypond-book.
1835 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
1837 * Documentation/topdocs/NEWS.tely (Top): add description.
1839 * input/regression/tuplet-full-length-note.ly: add file.
1841 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1842 always store axis group.
1844 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1846 * input/regression/instrument-switch.ly: new file.
1848 * lily/instrument-switch-engraver.cc (process_music): new file.
1850 * ly/engraver-init.ly: add Instrument_switch_engraver
1852 * ly/music-functions-init.ly: \instrumentSwitch
1854 * scm/define-context-properties.scm
1855 (all-user-translation-properties): add instrumentCueName
1857 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1859 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1861 * ly/music-functions-init.ly: music function \transposition.
1863 * lily/parser.yy (command_element): softcode \transposition.
1865 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1866 (process_music): oops.
1868 * lily/instrument-name-engraver.cc (start_spanner): new
1869 function. Create spanner when property changes.
1870 (stop_spanner): new function.
1872 * python/convertrules.py (conv): add rule.
1874 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1875 shortInstrumentName iso. instr.
1877 * scm/output-ps.scm (dashed-line): add phase argument to
1880 * lily/bar-line.cc (dashed_bar_line): new function.
1881 (compound_barline): support \bar "dashed".
1883 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1884 --output=DIR to DIR/BASE if it is a dir.
1886 * flower/file-name.cc (file_part): new function
1887 (dir_part): new function
1889 * lily/lily-parser-scheme.cc (LY_DEFINE):
1891 * DEDICATION: update
1893 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1895 * lily/instrument-name-engraver.cc: formatting.
1897 * python/convertrules.py (conv): bugfix for \epsfile.
1899 2006-07-25 Joe Neeman <joeneeman@gmail.com>
1903 * lily/gourlay-breaking.cc: Oops, these should have been included
1906 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1908 * scripts/*.py (program_name): cleanup relocation snippets.
1910 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1912 2006-07-24 Joe Neeman <joeneeman@gmail.com>
1914 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1915 page-breakable by default
1917 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1918 correctly calculated for a single-system page
1920 * scm/lily-library.scm (interval-sane?): also check that the first number is no
1921 bigger than the second number
1923 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1924 acknowledge that we aren't satisfying constraints)
1926 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1929 * lily/grob.cc (pure_height): add minimum-Y-extent
1931 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1934 * lily/constrained-breaking.cc: convert code to use new Matrix class
1935 (get_best_solution): new function
1937 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1938 is a page with no systems
1940 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1942 * VERSION (PACKAGE_NAME): release 2.9.13
1944 * scm/define-grobs.scm (all-grob-descriptions): remove stray
1947 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1949 * Documentation/topdocs/NEWS.tely (Top): doc new features.
1951 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1954 * scm/define-grob-properties.scm (all-user-grob-properties):
1955 remove grace-space-factor.
1957 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1958 grace-spacing-interface
1959 (spacing-options-interface): add.
1961 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1963 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1965 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1966 GraceSpacing object.
1968 * lily/note-spacing.cc: fix prop list formatting
1970 * lily/beaming-pattern.cc (de_grace): new function. Sensible
1971 beaming for grace notes too.
1973 * input/regression/spacing-grace.ly: update.
1975 * lily/grace-spacing-engraver.cc: new file.
1977 * lily/spacing-spanner.cc: add strict-grace-spacing.
1979 2006-07-20 Graham Percival <gpermus@gmail.com>
1981 * lily/parser.yy: compile fix.
1983 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1985 * scm/define-grobs.scm (all-grob-descriptions): typo.
1987 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1988 .eps extension from includegraphics.
1990 * scripts/lilypond-book.py (main): add support for --pdf.
1992 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1993 callback to compute common shortest duration.
1994 (set_springs): typo.
1996 * scm/define-grob-properties.scm (all-user-grob-properties): add
1997 strict-grace-spacing.
1999 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2000 support float_grace_columns_.
2002 * lily/spacing-options.cc (init_from_grob): new file.
2004 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2006 * input/regression/spacing-loose-grace.ly: new file.
2008 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2010 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2011 tupletFullLengthNote too. Choose right bound depending on value.
2013 * input/regression/tuplet-full-length-note.ly: new file.
2015 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2017 * lily/*-performer.cc: Converted try_music to listen_*
2019 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2020 as a stream-event internally. Introduce event_cause (), deprecate
2023 * scm/define-music-types.scm: Removed BusyPlayingEvent
2025 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2027 * Documentation/user/advanced-notation.itely (Font selection):
2028 Document how to get a list of available fonts using 'lilypond
2029 -dshow-available-fonts blabla'.
2031 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2033 * GNUmakefile.in: filter lily-XXX.pdf files.
2035 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2037 * scm/define-grob-properties.scm (all-internal-grob-properties):
2038 remove delta-pitch. Use delta-position everywhere.
2040 * scm/output-lib.scm (fall::print): use new order.
2042 * scm/output-ps.scm (path): reorder arguments.
2044 * scm/output-svg.scm (path): support for path primitive.
2046 * input/regression/bend-after.ly: new file.
2048 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2049 recipe for eps -> pdf conversion.
2051 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2053 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2056 2006-07-19 Graham Percival <gpermus@gmail.com>
2058 * input/manual/screech-boink.ly: moved to here.
2060 * input/screech-boink.ly: deleted.
2062 * scm/define-grob-properties.scm: clarify doc string.
2064 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2066 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2068 * scm/output-ps.scm (path): define path.
2070 * scm/define-stencil-commands.scm
2071 (ly:register-stencil-expression): add path.
2073 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2075 * ly/engraver-init.ly: add Fall_engraver
2077 * lily/parser.yy (music_function_event): allow musicfunction
2078 without music arg as music_function_event.
2080 * lily/grob-scheme.cc (LY_DEFINE):
2081 ly:grob-robust-relative-extent. New function.
2083 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2085 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2087 * scm/output-lib.scm (fall::print): new function
2089 * lily/fall-engraver.cc (stop_fall): new file.
2091 * ly/music-functions-init.ly: alphabetise.
2093 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2096 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2098 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2100 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2103 * lily/translator-group.cc (connect_to_context): non const error message.
2105 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2107 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2110 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2112 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2114 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2117 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2119 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2121 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2123 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2125 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2127 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2129 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2131 * scm/layout-page-layout.scm: Define module, tidy code, use more
2132 functions iso. a single big one.
2134 * scm/layout-page-dump.scm: move page dump functions used in two
2135 pass spacing to this file. Define module.
2137 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2140 * ly/paper-defaults.ly: use module layout-page-layout.
2142 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2144 * lily/music.cc: Revised MusicEvent event class. It now contains
2145 event data directly instead of encapsulating it in music. The
2146 previously used class is renamed to OldMusicEvent.
2148 * lily/stream-event.cc: Stream events are now probs.
2150 * lily/translator-group.cc, lily/translator.cc: Translators can
2151 now listen directly to stream events, by using macros
2152 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2154 * lily/arpeggio-engraver.cc: Converted to use new event system
2156 * THANKS: Corrected spelling mistake.
2158 2006-07-12 Graham Percival <gpermus@gmail.com>
2160 * Documentation/user/SConscript, make/lilypond-vars.make,
2161 input/GNUmakefile: doc build looks in input/manual instead
2164 * input/manual/ GNUmakefile, SConscript: build files for
2167 * input/test/ various: some files moved to input/manual/
2169 * Documentation/user/basic-notation.itely: small updates;
2170 thanks Kieren and Charles!
2172 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2174 * VERSION (PACKAGE_NAME): release 2.9.11
2176 * Documentation/topdocs/NEWS.tely (Top): update prop value
2178 * Documentation/user/basic-notation.itely (Tuplets): new property
2181 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2183 * python/convertrules.py (conv): tweaks.
2185 * VERSION (PATCH_LEVEL): bump version.
2187 * python/convertrules.py (conv): add rule for
2188 tupletNumberFormatFunction.
2190 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2191 tupletNumberFormatFunction.
2193 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2194 text through 'text callback.
2196 * lily/time-scaled-music-iterator.cc (construct_children): copy
2197 tweaks generated events.
2199 * scm/define-context-properties.scm
2200 (all-user-translation-properties): remove tupletNumberFormatFunction
2202 * lily/tuplet-engraver.cc (process_music): don't read
2203 tupletNumberFormatFunction
2205 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2208 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2210 * lily/global-context-scheme.cc: Separated ly:run-translator into
2213 * lily/score-engraver.cc, lily/score-performer.cc,
2214 scm/define-context-properties.scm: Make paper/midi output
2215 accessable as a context property.
2217 * lily/score-translator.cc, lily/score-context.cc: Removed.
2219 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2221 * scm/ps-to-png.scm (Module):
2222 * scm/framework-tex.scm (Module):
2223 * scm/framework-ps.scm (Module):
2224 * scm/backend-library.scm (Module):
2225 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2226 "dDEVICEHEIGHTPOINTS".
2228 2006-07-04 Graham Percival <gpermus@gmail.com>
2230 * Documentation/user/ various: general improvements to
2231 "working with lilypond files" section.
2233 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2235 * lily/sequential-iterator.cc: Change the default get_music_list
2236 to read elements-callback music property
2238 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2239 processing of multimeasure rests. Softcoded
2240 sequential-music-iterator.
2242 * lily/sequential-music-iterator.cc: Removed.
2244 2006-06-28 Graham Percival <gpermus@gmail.com>
2246 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2248 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2250 * lily/parser.yy: Wrap non-post-events in EventChords before
2251 assigning them to identifiers.
2253 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2255 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2256 gives correct vertical placement of \bar ":" in all staff
2257 sizes. Thanks Martial!
2259 2006-06-26 Graham Percival <gpermus@gmail.com>
2261 * Documentation/user/invoking.itely : minor update from mailist.
2263 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2265 * lily/ various: Introduce stream events of types Prepare,
2266 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2267 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2269 * lily/global-context*.cc: Time is now -inf before iteration
2272 * lily/include/context.hh: Removed unique_, init_
2274 * Documentation/topdocs/NEWS: Make the feathered beam example
2275 avoid triggering a bug.
2277 2006-06-24 Graham Percival <gpermus@gmail.com>
2279 * Documentation/user/ various: small additions from mailist.
2281 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2283 * ly/performer-init.ly: Add some missing links in the context
2284 hierarchy for MIDI output. There are probably some more missing!
2286 2006-06-21 Graham Percival <gpermus@gmail.com>
2288 * Documentation/user/ various: minor spelling fixes;
2289 thanks Dave Luttinen!
2291 * Documentation/user/ various: small clarifications;
2292 thanks Anthony Youngman!
2294 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2296 * po/fr.po: add \n appropriately.
2298 * lily/lexer.ll: remove ? from version-seen?
2300 2006-06-19 John Mandereau <john.mandereau@free.fr>
2302 * po/fr.po; update translation, by Jean-Charles Malahieude and
2305 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2307 * THANKS: add Markus Schneider.
2309 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2310 Staff_symbol_engraver
2312 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2313 replace staff_engraver
2315 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2318 * lily/staff-collecting-engraver.cc
2319 (acknowledge_end_staff_symbol): new function
2321 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2323 * lily/staff-collecting-engraver.cc
2324 (acknowledge_end_staff_symbol): new function.
2326 * lily/main.cc: switch on relocation by default.
2328 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2330 * lily/spacing-spanner.cc (musical_column_spacing): set
2331 compound_fixed_note_space to 0.0. Document why.
2333 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2334 range of inverse_hooke_
2335 (Simple_spacer): init completely.
2337 (get_line_configuration): don't use cols.resize(); it introduces
2340 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2342 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2344 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2345 try. Divide by beatlength.
2347 * input/regression/beaming-ternary-metrum.ly: update doc.
2348 add beatLength hack.
2350 * scm/music-functions.scm (make-time-signature-set): add
2351 standard-beat-grouping.
2353 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2355 * input/regression/tie-whole.ly: new file.
2357 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2358 cross center of note head in case of invisible stem.
2360 2006-06-16 Graham Percival <gpermus@gmail.com>
2362 * Documentation/user/ various: small fixes from mailist.
2364 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2366 * lily/breathing-sign.cc (offset_callback): idem.
2368 * lily/align-interface.cc (align_to_fixed_distance): remove
2371 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2374 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2376 * VERSION (PACKAGE_NAME): release 2.9.9
2378 * ly/lilypond-book-preamble.ly: add \version
2380 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2382 * scripts/lilypond-book.py (PREAMBLE_LY): include
2383 lilypond-book-preamble.ly
2385 * lily/stem.cc (get_beaming): return max of 0 and
2386 scm_ilength. Fixes slurring from/to beams.
2388 * ly/lilypond-book-preamble.ly: new file.
2390 * lily/slur.cc: add inspect-index feature.
2392 2006-06-13 Graham Percival <gpermus@gmail.com>
2394 * Documentation/user/tutorial.itely: trivial fix.
2396 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2398 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2399 all non-event music in the parser via MAKE_SYNTAX.
2401 * lily/parser-scheme.cc: Add ly:parser-error function
2403 * scm/paper.scm: fix typo
2405 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2409 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2412 * buildscripts/output-distance.py (test_compare_signatures):
2414 (read_signature_file): use new signature format.
2416 * scm/stencil.scm (write-system-signature): simpler signature
2419 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2422 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2423 stem_end_position, but estimate instead.
2425 * lily/tuplet-bracket.cc (calc_positions): look at
2426 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2427 brackets narrower than beams.
2429 * lily/lexer.ll: set version-seen? even if version is
2432 * lily/rest.cc (y_offset_callback): bugfix: decide position
2433 override based on scm_is_number(). Fixes \rest on center staff
2436 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2437 patterns for 16th triplets.
2439 2006-06-10 Graham Percival <gpermus@gmail.com>
2441 * Documentation/user/ page.itely, global.itely: editing
2444 * Documentation/user/ various: findex -> funindex.
2446 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2448 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2449 insert extra tuplet events.
2451 2006-06-10 Graham Percival <gpermus@gmail.com>
2453 * Documentation/user/programming-interfaces.itely: add
2456 * python/convertrules.py: add annotatefoo -> annotate-foo
2459 * Documentation/user/global.itely: start editing.
2461 * Documentation/user/page.itely: major editing, new spacing
2464 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2466 * scm/define-markup-commands.scm (wordwrap-markups): use
2467 output-def 'line-width if undefined.
2469 * HACKING: trim outdated info.
2471 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2473 * scm/define-grobs.scm (all-grob-descriptions): Add
2474 line-spanner-interface to all grobs that already have
2475 text-spanner-interface or dynamic-text-spanner-interface
2477 * scm/page.scm: Rename annotate{headers,systems,page}->
2480 * input/regression/page-spacing.ly,
2481 input/regression/page-layout-manual-position.ly: idem
2483 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2485 * lily/line-spanner.cc: cleanup property list.
2487 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2488 generator expressions (2.3 compat).
2490 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2492 * lily/vertical-align-engraver.cc: Make sure that the
2493 align{Above,Below}Context properties are included in the automatic
2496 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2498 * scm/paper-system.scm (paper-system-annotate): also annotate the
2499 estimated pure-Y-extent
2501 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2503 * lily/system.cc (break_into_pieces): set the estimated height
2504 of each child system
2506 * lily/stem.cc (pure_height): new pure-Y-extent callback
2508 * lily/staff-symbol-referencer.cc (callback): don't destroy
2509 the staff-position property
2511 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2512 consider_suicide into two functions
2514 * lily/constrained-breaking.cc (resize): use the new pure
2515 callbacks to estimate the height of a system
2517 * lily/axis-group-interface.cc (pure_group_height): new
2518 side-effect-free VerticalAxisGroup height-callback
2520 * lily/align-interface.cc (get_extents_aligned_translates):
2521 split align_elements_to_extents into two functions
2522 (get_pure_child_y_translation): new function
2524 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2526 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2528 * lily/paper-score.cc: cache break_indices and columns
2530 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2532 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2534 * lily/font-config.cc (init_fontconfig): do the init if
2535 cache_file, but don't look at cache_file.
2537 * input/regression/quote-tie.ly: new file.
2539 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2540 to Head_event_tuple, so we deal gracefully with ties on
2543 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2546 2006-06-08 Graham Percival <gpermus@gmail.com>
2548 * input/test/ smart-transpose.ly, reverse-music.ly:
2549 \applyMusic to music functions update, thanks Michael!
2551 2006-06-07 Graham Percival <gpermus@gmail.com>
2553 * input/test/ add-staccato.ly, add-text-script.ly,
2554 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2555 music functions update, thanks to Michael Meixner.
2557 * Documentation/user/music-glossary.tely: small fix
2560 * Documentation/user/ various: minor additions from mailist.
2562 * Documentation/user/lilypond.tely, basic-notation.itely:
2563 small test of @funindex. (works here)
2565 * input/test/font-table.ly: reduce size to partially
2566 de-ugly version in manual.
2568 * Documentation/user/page.itely: new file (split former
2569 "global issues" into "page settings" and "non-musical
2572 * Documentation/user/ various: fix @ref{}s to match
2573 new chapter names (above).
2575 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2577 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2579 2006-06-06 Graham Percival <gpermus@gmail.com>
2581 * Documentation/user/advanced-notation.itely: add example
2582 for segno/coda on barline.
2584 * tex/texinfo.tex: merge from upstream.
2586 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2588 * scripts/lilypond-book.py (process_snippets): Argument fix.
2591 * buildscripts/builder.py:
2594 * Documentation/user/SConscript: More SCons fixes.
2596 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2598 * lily/font-config.cc (init_fontconfig): Only initialize if
2599 global cache_file is found.
2601 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2603 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2606 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2608 * VERSION (PACKAGE_NAME): release 2.9.8
2610 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2611 function. Delay ledger modifying ledgered grobs to
2612 stop_translation_timestep(), to ensure that we're ledgering
2613 according to the new spanner.
2614 (acknowledge_staff_symbol): don't check for non-NULL
2615 staff_sym->get_bound()
2617 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2620 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2623 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2624 directly from srcdir/stepmake/aclocal.m4
2626 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2629 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2631 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2633 * lily/simple-spacer.cc (get_line_configuration): add
2634 keep-inside-line rods
2635 (struct Column_desc): add constructor
2636 (struct Rod_desc): add constructor
2637 (get_line_forces): check for forced page breaks here too
2639 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2640 support/elements cycles between InstrumentNames and AxisGroups
2642 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2644 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2646 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2647 make-txt-files target.
2649 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2650 make-txt-files target.
2652 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2654 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2657 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2659 * Documentation/user/instrument-notation.itely,
2660 input/regression/breathing-sign-ancient.ly,
2661 input/test/divisiones.ly: Removed redundant property settings for
2664 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2665 fix lyrics alignment problems. They are implemented now as scheme
2666 functions that add the appropriate unicode char to the first lyric
2667 event rather than adding a separate lyric event. Minor edit of
2670 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2672 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2673 pollute src dir with built .txt files, but install directly from
2674 Documentation/topdocs/out/
2676 * buildscripts/output-distance.py
2677 (ComparisonData.create_html_result_page): put version/directories
2680 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2683 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2684 Patch by Karl Hammar
2686 * buildscripts/readlink.py: add file.
2687 Patch by Karl Hammar
2689 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2691 * lily/tuplet-number.cc (print): prevent stencil from being
2694 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2696 * scm/stencil.scm (write-system-signature): explicitly
2697 -well, superfluously- close output port.
2699 * buildscripts/output-distance.py (main): oops. Add extra argument.
2701 2006-06-05 Graham Percival <gpermus@gmail.com>
2703 * Documentation/user/music-glossary.tely: clarified example
2704 from Francisco Vila, thanks!
2706 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2708 * input/regression/spacing-section.ly: new file.
2710 * lily/input.cc (programming_error): new function.
2712 * lily/spacing-engraver.cc (try_music): new function. Accept
2713 spacing-section-event
2715 * lily/spacing-spanner.cc (set_springs): take slices of all
2716 columns for spacing.
2718 * lily/include/paper-column.hh (class Paper_column): add
2719 Paper_column::compare.
2721 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2723 * scm/define-music-types.scm (music-descriptions): add
2726 * lily/music-iterator.cc (report_event): use programming_error for
2727 sending non-event error.
2729 * lily/input.cc (programming_error): new function
2731 * buildscripts/output-distance.py (main): use compare-XXX for
2733 (main): --threshold option, default at 0.30
2735 * output-distance.py (main): add --threshold option.
2737 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
2739 * scm/paper-system.scm (paper-system-annotate): fix problem when
2740 annotating an empty system
2742 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2744 * GNUmakefile.in: reinstate old web tar/copying.
2746 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2748 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2749 nothing changes. (Erik S)
2751 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2754 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
2756 * scm/define-markup-commands.scm (whiteout): do not force
2757 foreground color of argument markup to black.
2759 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2760 the left of the arrow, instead of below the arrow name, so that,
2761 when two little arrows are vertically stacked, their dimensions
2762 and name should not overlap. Add a color key parameter.
2764 * scm/paper-system.scm (paper-system-annotate): Annotate
2765 next-space+next-padding instead of next-space. Annotate space
2766 between next-padding and next-space+padding, respectively, and
2767 following system extent and refpoint-Y-extent. Use colors.
2769 * scm/page.scm (annotate-page): translate annotations slightly to
2772 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2774 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2775 fix for x-staff slurs. Thanks Joe!
2777 * buildscripts/output-distance.py
2778 (SystemLink.output_expression_change_count): keep track of changed
2779 details, and dump in details html page.
2781 * input/regression/figured-bass-staff.ly: add note about setting
2782 properties in Staff context.
2784 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2785 add slurs and ties to support too.
2787 * buildscripts/output-distance.py (main): set dest_dir
2788 argument. Add --max-count option.
2790 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
2792 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
2793 shortcuts for special unicode chars that are useful in chant
2794 notation. Revised exisiting and added new comments.
2796 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2798 * make/mutopia-rules.make: remove duplicate recipe.
2800 2006-06-02 Werner Lemberg <wl@gnu.org>
2802 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2803 Add support for U+0132 (IJ) and U+0133 (ij).
2805 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2807 * buildscripts/output-distance.py (FileLink): new class. collect
2808 info systems from one .ly file.
2809 (FileLink.link_files_for_html): further tweaks.
2811 2006-06-02 Graham Percival <gpermus@gmail.com>
2813 * tex/texinfo.tex: partial fix for @funindex.
2815 * Documentation/user/macros.tely: uncomment @funindex (doesn't
2818 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2820 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2822 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2823 @example too. Backportme.
2825 2006-06-02 Graham Percival <gpermus@gmail.com>
2827 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2828 from Werner Lemberg.
2830 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
2832 * Documentation/user/music-glossary.tely: additional spanish
2833 updates and a lyrics fix in an example.
2835 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
2837 * scm/define-grob-properties.scm: Previous patch contained
2838 spurious line from another patch not yet committed. Fixed.
2840 * scm/define-grob-properties.scm: Add missing doc strings for
2843 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
2845 * buildscripts/output-distance.py
2846 (ComparisonData.write_text_result_page): separate the scores, sort
2849 * scm/framework-eps.scm (output-classic-framework): start at 1 for
2852 * buildscripts/output-distance.py (me_path): use argv[0] for
2854 (ComparisonData.img_cell): use colored borders.
2856 * scm/stencil.scm (write-system-signature): escape newlines too.
2857 (write-system-signature): use (1,-1) interval for empty interval
2859 2006-01-01 Graham Percival <gpermus@gmail.com>
2861 * Documentation/user/music-glossary.tely: Spanish updates
2862 from Francisco Vila.
2864 * Documentation/user/lilypond-book.itely: addition from
2867 * Documentation/user/ various: edits, small additions
2870 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
2872 * GNUmakefile.in (tree-lib-prefix-current):
2873 (tree-share-prefix-current): Use version number in tree, add
2876 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
2878 * GNUmakefile.in: write VERSION, again.
2880 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2881 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2883 * stepmake/aclocal.m4: robuster version detection.
2885 * buildscripts/output-distance.py
2886 (ComparisonData.create_html_result_page): copy only if file
2887 exists, fixup src paths.
2889 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2891 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
2893 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2894 Another datarootdir reto.
2896 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2897 available. This should be moved to postinstall-lilypond-doc.
2899 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2901 * GNUmakefile.in: simplify local-WWW-post.
2902 remove -type l from find.
2904 * buildscripts/output-distance.py (ComparisonData.compare_trees):
2905 fixes. Don't follow symlinks.
2906 (ComparisonData.create_html_result_page): remove previous results.
2907 insert ../python in path.
2909 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2911 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
2913 * config.make.in (datadir): Add datarootdir to silence autoconf.
2915 * stepmake/aclocal.m4: Update for autoconf-2.59d.
2917 2006-05-31 Erlend Aasland <erlenda@gmail.com>
2919 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2921 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2922 slash beams too wide.
2924 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
2926 * VERSION: release 2.9.7
2928 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
2930 * lily/relocate.cc (read_relocation_dir): Do not blindly
2933 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
2935 * lily/parser.yy: replace THIS by PARSER
2937 * Documentation/index.html.in: add link to test-results.html page.
2939 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2941 * scm/translation-functions.scm (format-bass-figure): translate
2942 digits over 10 to the left
2944 * scm/define-markup-commands.scm (translate-scaled): new markup.
2946 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2949 * ly/engraver-init.ly: add Figured_bass_engraver
2951 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2953 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2955 * lily/score-engraver.cc (announce_grob): only note START announces.
2957 * lily/include/engraver-group.hh (Translator_group):
2958 acknowledge_hash_table_ is now drul.
2960 * lily/engraver.cc (announce_end_grob): new method.
2962 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2964 * lily/translator-dispatch-list.cc (create): take start_end argument.
2966 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2967 acknowledge_static_array_ to drul
2969 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2971 * scm/define-grob-interfaces.scm
2972 (bass-figure-alignment-interface): add bass-figure-alignment-interface
2974 * scm/define-grobs.scm (all-grob-descriptions): add
2975 BassFigureAlignmentPositioning
2977 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2978 number stays up to date. Backportme.
2980 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
2982 * Documentation/user/basic-notation.itely (Bar lines): Document
2985 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
2987 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2989 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2990 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
2993 * Resurrect `scons lily' build.
2995 * SConstruct (symlink_tree): Bugfix: link
2996 music-drawing-routines.ps to file iso directory.
2998 * lily/SConscript: Remove kpath-guile from LIBS.
3000 * SConstruct (libdir_package_version): Typo.
3001 (configure): Comment-out fontforge for lack of fontforge.pc .
3002 Also add libdir* to environment.
3004 2006-05-30 Graham Percival <gpermus@gmail.com>
3006 * Documentation/user/ various: minor additions from mailist and
3009 2006-05-30 Paco <fravd@ya.com>
3011 * Documentation/user/music-glossary.tely: numerous corrections and
3012 some new translations.
3014 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3018 * buildscripts/output-distance.py
3019 (ComparisonData.create_html_result_page): new routine: summarise
3020 results in HTML page with images.
3021 (ComparisonData.create_text_result_page): create summary text files too.
3023 * GNUmakefile.in (web-ext): package .signature files too. They
3026 * scm/stencil.scm (write-system-signature): typo.
3028 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3030 * scm/stencil.scm (write-system-signature): better escaping.
3031 only write signature for music systems, not for markup systems.
3033 * scm/framework-ps.scm (output-framework): dump-signatures support
3036 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3038 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3039 for -dno-point-and-click
3041 * lily/grob.cc (get_print_stencil): don't read
3042 point_and_click_global to determine whether to set grob-cause.
3044 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3046 * buildscripts/output-distance.py (main): new function.
3047 (ComparisonData): new class.
3049 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3050 careful with generating new LedgerLineSpanners.
3052 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3054 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3055 context. This fixes double ledger lines in output.
3057 * lily/system.cc (get_paper_system): remove 3 layer limit.
3059 * buildscripts/output-distance.py (SystemLink.distance): new
3060 file. Compare signatures.
3062 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3064 * lily/grob-array.cc (remove_duplicates): rename from
3065 uniq(). Sort before calling uniq() so it actually works.
3067 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3069 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3070 \version from lilypond file snippet.
3071 (Lilypond_file_snippet.ly): oops. typo.
3072 (find_toplevel_snippets): urgh. again.
3074 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3075 prevent duplicated broken items in output.
3077 * scm/framework-eps.scm (output-classic-framework): only dump if
3078 dump-signatures is set.
3080 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3082 * scm/stencil.scm (write-system-signature): new routine: write
3083 python parseable signature of a separate paper system.
3086 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3088 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3092 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3094 * translator-group.cc: send music events to engravers in
3095 non-bottom contexts.
3097 * tuplet-engraver.cc: process tuplet brackets in correct order.
3099 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3101 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3102 arg 2 might point us to a new binary (patch by Karl Hammar)
3104 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3106 * VERSION (PACKAGE_NAME): release 2.9.6
3108 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3110 * Documentation/user/*.itely: 2nd
3111 attempt: replace funindex -> findex globally.
3113 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3115 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3116 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3118 * scm/define-music-display-methods.scm: display methods for
3119 breaks. Fix \applyOutput.
3121 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3123 * Documentation/user/macros.itexi: comment out funindex expansion.
3125 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3128 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3129 Karl Hammar. Backportme.
3131 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3133 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3135 * Documentation/user/programming-interface.itely (Running a
3136 function on all layout objects): idem.
3138 * Documentation/user/introduction.itely (Automated engraving):
3139 update \applyOutput syntax
3141 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3142 remove debugging hook.
3144 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3147 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3149 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3150 TEXI2DVI_FLAGS to texi2dvi invocation.
3152 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3154 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3155 works. More work is done by iterator now, and engraver has been
3156 very much simplified.
3158 * lily/translator-group.cc: try_music is now invoked through a
3161 * lily/*-iterator.cc: Massive cleanups. Junked
3162 try_music_in_children globally. Renamed try_music to report_event,
3163 and made that method descend to a bottom context automatically.
3165 * lily/event-iterator.cc: New file.
3167 * lily/output-property-iterator.cc,
3168 lily/old-lyric-combine-music-iterator.cc: Removed.
3170 * python/convert-rules.py: Modified the syntax for \applyOutput.
3172 2006-05-23 Graham Percival <gpermus@gmail.com>
3174 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3177 * Documentation/user/ various: stuff that might have helped
3178 to fix the pdf creation, plus some minor doc additions.
3180 * Documentation/user/changing-defaults.itely: remove @b from
3181 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3183 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3185 * lily/beaming-pattern.cc (beamify): deal with negative start
3186 moments for beaming patterns.
3188 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3190 * lily/beaming-info.cc (beamify): new function: read beatLength
3191 and beatGrouping from context.
3193 * input/regression/beam-beat-grouping.ly (Module): new file.
3195 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3197 * lily/beam.cc (get_beam_segments): generate events for
3198 max_connect_ case too.
3199 (get_beam_segments): read Stem::max-beam-connect.
3201 * input/regression/beam-single-stem.ly: new file.
3203 * lily/stem.cc (set_beaming): use #f as signaling value for
3206 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3208 * lily/beam.cc (set_beaming): read clip-edges property.
3209 (calc_direction): don't suicide for single stem.
3211 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3212 argument, remove 1<<15 hack. Remove clip_edges()
3214 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3216 2006-05-21 Graham Percival <gpermus@gmail.com>
3218 * Documentation/user/basic-notation.itely: reorg.
3220 * Documentation/user/ various: minor fixes.
3222 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3224 * lily/stencil-expression.cc (register_stencil_head): opps, append
3225 to cdr of static SCM object.
3227 2006-05-19 Graham Percival <gpermus@gmail.com>
3229 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3230 update framework for command index. DOC WRITERS: use @funindex
3231 instead of @cindex @code{}.
3233 * Documentation/user/ various: replace @cindex @code{} => @funindex
3235 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3237 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3238 case positions is set manually.
3240 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3242 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3245 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3247 * Documentation/user/changing-defaults.itely (Contexts explained):
3248 use absolute dimension for @image.
3250 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3251 out image for illustration too.
3252 ($(outdir)/%.png): add more png <-> eps rules.
3254 2006-05-17 Graham Percival <gpermus@gmail.com>
3256 * Documentation/user/ various: remove trailing whitespace, cosmetic
3257 change to reduce changes produced by diff.
3259 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3261 * lily/main.cc (do_chroot_jail): correctness tweak.
3263 * python/lilylib.py (system): import subprocess in system () only.
3265 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3267 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3268 variable. Backportme.
3270 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3272 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3274 2006-05-17 Werner Lemberg <wl@gnu.org>
3276 * lily/lexer.ll (init_signature_has_table): Add
3277 `scm-scm-music-music'.
3279 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3280 (Generic_prefix_music_scm): Add rule for it.
3282 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3283 `quoted-transposition' property.
3285 * ly/music-functions-init.ly (transposedCueDuring): New function.
3287 * scm/define-music-properties.scm (all-music-properties): Updated.
3289 * Documenation/topdocs/NEWS.itely: Document it.
3291 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3293 * python/lilylib.py (system): move import subprocess to system()
3296 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3298 * VERSION (PATCH_LEVEL): release 2.9.5
3300 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3303 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3305 2006-05-16 Graham Percival <gpermus@gmail.com>
3307 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3309 * Documentation/user/ various: minor fixes.
3311 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3313 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3315 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3317 * Documentation/user/advanced-notation.itely (Instrument names):
3318 Modified obsolete instruction on how to move instrument names away
3319 from the staves. Hmm, at second thought the bug probably has been
3320 solved, so the full bug description should probably be removed.
3322 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3324 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3325 currentCommandColumn.
3327 * lily/hairpin.cc (print): also add padding for non-neighbor
3330 * scm/define-context-properties.scm
3331 (all-user-translation-properties): add hairpinToBarline
3333 * input/regression/hairpin-to-barline.ly: new file.
3335 * lily/context.cc (internal_send_stream_event): thinko fix.
3337 * lily/tie.cc (set_default_control_points): robustness fix.
3339 * python/musicxml.py (Part.interpret): don't complain about
3340 incomplete measures.
3342 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3343 new music if last_event_chord() returned None.
3345 * python/musicxml.py (Part.interpret): skip back over chord notes.
3347 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3349 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3350 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3351 lily/slash-repeat-engraver.cc,
3352 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3353 iterator sends PercentEvents
3355 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3356 rework tuplets: send start/stop events to engraver
3358 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3359 dispatchers event-source and events-below to Context
3361 2006-05-15 Graham Percival <gpermus@gmail.com>
3363 * Documentation/user/README.txt: update info for doc writers.
3365 * Documentation/user/programming-interface.itely: integrate
3366 Nicolas' fixes for chapter rewrite.
3368 * Documentation/user/ various: minor fixes.
3370 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3372 * lily/clef-engraver.cc: cleanup.
3374 * Documentation/user/GNUmakefile: dist context-example.eps too.
3376 * lily/key-engraver.cc (create_key): use
3377 explicitKeySignatureVisibility for cancellation too.
3379 * lily/font-config.cc (init_fontconfig): don't close file if
3382 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3384 * Documentation/topdocs/NEWS.tely: niente and rotation news
3386 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3388 * lily/include/stencil.hh
3389 * lily/stencil.cc (rotate): new function. Makes it possible
3390 to rotate a stencil around a given offset.
3392 * lily/grob.cc (get_print_stencil): add rotation support
3394 * lily/stencil-interpret.cc (interpret_stencil_expression):
3395 add rotation support
3397 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3399 * scm/define-grob-properties.scm: add 'rotation property
3401 * scm/define-markup-commands.scm: add rotate markup command
3403 * scm/output-ps.scm: add rotation support in PostScript backend
3405 * scm/output-svg.scm: add rotation support in SVG backend
3407 2006-05-13 Graham Percival <gpermus@gmail.com>
3409 * Documentation/user/music-glossary.itely: French correction.
3411 * Documentation/user/programming-interface.itely: major
3412 new docs, some reorg, some info from Nicolas.
3414 * Documentation/user/ various: small fixes.
3416 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3418 * Documentation/user/programming-interface.itely (Markup
3419 programmer interface): Remove duplicate text.
3421 2006-05-12 Graham Percival <gpermus@gmail.com>
3423 * Documentation/user/context-example.eps: new file.
3425 * Documentation/user/changing-defaults.itely: set up file to
3428 * Documentation/user/programming-interface.itely: changes
3431 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3433 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3435 2006-05-11 Graham Percival <gpermus@gmail.com>
3437 * Documentation/user/programming-interface.itely: first round of
3438 editing and merging emails from Nicolas.
3440 * Documentation/user/scheme-tutorial: minor edit.
3442 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3444 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3446 (Xml_node.message): use it.
3448 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3449 oops. Add duration argument.
3451 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3453 * lily/paper-column-engraver.cc (make_columns):
3454 * scm/define-grobs.scm: Revert my previous change and set the default
3455 in define-grobs.scm instead.
3457 2006-05-09 Graham Percival <gpermus@gmail.com>
3459 * Documentation/user/changing-defaults.itely: general editing,
3460 info about \set and \override.
3462 * Documentation/user/tweaking.itely, advanced-notation.itely:
3463 fixes from Dave Luttinen, thanks!
3465 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3467 * lily/paper-column-engraver.cc (make_columns): By default, a column
3468 needs to be breakable.
3470 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3472 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3474 (musicxml_time_to_lily): idem
3475 (musicxml_key_to_lily): idem
3476 (instrument_drumtype_dict): dict for supported drumtypes.
3477 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3478 moments and pending mm rests
3479 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3480 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3481 (musicxml_voice_to_lily_voice): add mode change.
3482 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3483 speed and less memory usage (factor 5 to 10).
3484 (convert): write -defs.ly and driver file separately so people
3485 can script their own part extraction.
3487 * python/musicxml.py (minidom_demarshal_node): new function:
3488 separate minidom handling.
3489 (lxml_demarshal_node): new function: support lxml.etree too.
3490 (Xml_node.message): new function: verbose error message, with XML
3491 path to offending node.
3492 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3493 (Part_list.generate_id_instrument_dict): new method: collect
3494 instrument names, to be able to set drum_type.
3495 (Part.interpret): handle underfull measures
3496 (Part.interpret): assign instrument names.
3498 * python/musicexp.py (Output_printer.close): new method
3499 (MusicWrapper.print_ly): new class: support other modes,
3501 (BarCheck.print_ly): new class. Support bar checks, with comments
3502 and fancy barchecks.
3503 (NoteEvent.__init__): also set drum_type for drum notes.
3504 (MultiMeasureRest.lisp_expression): dump mm rests.
3506 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3507 line-break-permission if forbidBreak is not set.
3509 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3511 * scm/define-context-properties.scm:
3512 * scm/define-grob-properties.scm:
3513 * scm/define-grobs.scm:
3514 * scm/define-music-display-methods.scm:
3515 * scm/define-music-properties.scm:
3516 * scm/define-music-types.scm:
3517 * scm/music-functions.scm:
3518 * ly/declarations-init.ly:
3519 * lily/include/constrained-breaking.hh:
3521 * lily/spaceable-grob.cc:
3522 * lily/simple-spacer.cc:
3523 * lily/paper-score.cc:
3524 * lily/paper-column.cc:
3525 * lily/paper-column-engraver.cc:
3527 * lily/gourlay-breaking.cc:
3528 * lily/constrained-breaking.cc:
3529 * python/convertrules.py:
3530 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3531 "page-break-penalty" and "line-break-permission".
3532 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3533 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3535 * lily/bar-engraver.cc:
3536 * lily/beam-engraver.cc:
3537 * lily/forbid-break-engraver.cc:
3538 * lily/ligature-engraver.cc:
3539 * lily/paper-column-engraver.cc:
3540 * lily/percent-repeat-engraver.cc:
3541 * lily/score-engraver.cc:
3542 * lily/score-engraver.hh:
3543 * lily/paper-column-engraver.hh:
3544 Inter-engraver communication regarding line breaks is done through context
3545 properties (Score.forbidBreak) instead of function calls.
3547 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3549 * VERSION (PACKAGE_NAME): release 2.9.4
3551 2006-05-08 Graham Percival <gpermus@gmail.com>
3553 * Documentation/user/working.itely: proofreading from Dave
3556 * Doucmentation/user/README.txt: updated with manual style info.
3558 * Documentation/user/ various: trim linewidth to 78 chars.
3560 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3562 * scm/define-grob-properties.scm (all-internal-grob-properties):
3563 remove chord-tremolo property.
3565 * lily/beam.cc (get_beam_segments): don't use stem position as
3566 base for broken ends.
3568 2006-05-06 Graham Percival <gpermus@gmail.com>
3570 * Documentation/user/putting.itely: proofreading from Dave
3573 * Documentation/user/ various: more reorg and clarifications.
3575 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3577 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3579 * ly/music-functions-init.ly: new function featherDurations
3581 * lily/beam.cc: read grow-direction for feathered beaming.
3583 * Documentation/topdocs/NEWS.tely (Top): typo.
3585 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3587 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3590 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3591 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3592 used by music streams.
3594 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3595 lily/stream-event.cc, lily/stream-event-scheme.cc,
3596 lily/listener.cc, lily/scheme-listener.cc,
3597 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3598 lily/include/stream-event.hh, lily/include/listener.hh,
3599 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3600 Created data structures for music streams.
3602 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3604 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3605 construction of a beam.
3608 * flower/include/std-vector.hh (default_compare): use only one comparison.
3610 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3611 (note-by-number): further attachment fixes.
3613 * scm/lily-library.scm (ordered-cons): new function.
3614 (interval-index): new function
3616 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3618 * lily/note-head.cc (get_stem_attachment): new function.
3620 * scm/define-markup-commands.scm (note-by-number): read 'style
3623 * input/regression/markup-note.ly: show note-head style option.
3625 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3628 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3630 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3632 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3634 * lily/include/constrained-breaking.hh: GCC 4 fix.
3636 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3638 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3639 Replace it with functions get_line_forces and get_line_configuration.
3640 (class Simple_spacer): Make data private.
3641 Rewrite compression algorithm to be faster and simpler.
3643 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3644 * lily/gourlay-breaking.cc (solve):
3645 * lily/constrained_breaking.cc (space_line):
3646 Change it to the new simple-spacer code.
3648 * lily/paper-score.cc (get_paper_systems):
3651 Delay breaking the systems until they are requested.
3652 (find_break_indices):
3653 Use vsize for indices.
3655 Move the "Calculating line breaks" message here.
3657 * lily/system.cc (pre_processing):
3658 Move the "Calculating line breaks" message away from here.
3659 (break_into_pieces):
3660 Allow multiple calls to this function in sequence (with touching-but-
3661 not-overlapping breakpoints).
3663 * lily/constrained-breaking.cc:
3664 Replace most of the get_XXXX functions with get_line_details.
3665 Only calculate the force for each line. Calculate configurations only
3666 for the lines we will actually use.
3667 Replace cols_ with lines_.
3669 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3671 * mf/GNUmakefile (depth): remove FC_FIND.
3673 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3675 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3677 * scm/framework-ps.scm (write-preamble): new function.
3678 (write-preamble): load mac fonts via fondu, even if gs-font-load
3681 2006-05-03 Werner Lemberg <wl@gnu.org>
3683 * mf/GNUmakefile (FC_FIND): Fix typo.
3685 2006-05-03 Erlend Aasland <erlenda@gmail.com>
3687 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3689 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3691 * stepmake/aclocal.m4: run python-config for crosscompiling
3694 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3695 -f png for HTML, TEXINFO formats.
3697 * input/tutorial/lbook-html-test.html: new file.
3699 * lily/include/tie-formatting-problem.hh (class
3700 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3701 [column, direction]. This fixes laissez vibrer ties.
3703 * flower/include/tuple.hh (struct Tuple2): new file.
3705 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3706 $(FCMATCH), only if $(NCSB_DIR) not set.
3708 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3710 * config.make.in (DOCUMENTATION): set FCMATCH.
3712 * autogen.sh (srcdir): don't set --with-ncsb-dir.
3714 2006-05-03 Graham Percival <gpermus@gmail.com>
3716 * Documentation/user/ various: final round of reorg.
3718 * Documentation/user/instrument-notation.itely: some more
3719 fixes from Eduardo, thanks!
3721 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3723 * VERSION (PACKAGE_NAME): release 2.9.3
3725 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3727 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3729 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
3731 * scm/define-grob-properties.scm (all-user-grob-properties):
3732 Correct typo, thanks to Eduardo.
3734 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3736 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3738 * buildscripts/lilypond-words.py (F): indent fix.
3740 * input/regression/tie-arpeggio-collision.ly: new file.
3742 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3743 function: store outlines per column rank.
3745 * lily/include/tie-configuration.hh (class Tie_configuration): add
3746 column_ranks_ to specification and configuration, to distinguish
3747 between ties for different heads in arpegiated chords.
3749 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3751 * *.py: more 4 space indents.
3753 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3755 2006-05-01 Joe Neeman <joeneeman@gmail.com>
3757 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3759 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3761 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3763 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
3765 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3767 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
3769 * python/convertrules.py (conv): indent 4 for python files.
3771 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
3773 * Documentation/user/changing-defaults.itely (Creating contexts):
3774 Clarify \new semantics.
3776 2006-04-28 Graham Percival <gpermus@gmail.com>
3778 * Documentation/user/ various: major new sections in the
3779 Learning manual, slight reorg elsewhere.
3781 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3783 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
3785 * scm/framework-ps.scm (output-framework): remove PageMedia
3787 2006-04-27 Graham Percival <gpermus@gmail.com>
3789 * Documentation/user/ tweaks.itely, working.itely: new
3790 files, being more advanced "learning manual" chapters.
3792 * Documentation/user/ tutorial, putting, lilypond: reorg.
3794 2006-04-26 Graham Percival <gpermus@gmail.com>
3796 * input/regression/lyric-combine-polyphonic.ly: fixed test
3797 (no more "can't find context `one'" error).
3799 2006-04-25 Joe Neeman <joeneeman@gmail.com>
3801 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3803 * input/regression/stem-tremolo.ly: add 2 more whole note examples
3805 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
3807 * lily/relocate.cc (read_relocation_dir): new function.
3809 2006-04-26 Graham Percival <gpermus@gmail.com>
3811 * Documentation/user/instrument-notation.itely: a few more fixes
3812 from Eduardo, thanks!
3814 * Documentation/user/README.txt: new file; contains info on
3815 style that used to be in lilypond.tely.
3817 * Documentation/user/ various: first round of doc reorg.
3819 * Documentation/user/baer-flat-bw.png: remove alpha bit from
3820 graphic; this probably causes problems on some pdf
3821 viewers, notably Adobe Acrobat.
3823 2006-04-24 Graham Percival <gpermus@gmail.com>
3825 * Documentation/user/instrument-notation.itely: many alterations
3826 to Vocal music, from Eduardo Viera.
3828 2006-04-23 Graham Percival <gpermus@gmail.com>
3830 * Documentation/user/instrument-notation.itely: fix \new
3831 instead of \context problem.
3833 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
3835 * lily/relocate.cc (expand_environment_variables): new function.
3837 (read_relocation_file): id.
3839 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
3841 2006-04-21 Erlend Aasland <erlenda@gmail.com>
3843 * ly/engraver-init.ly: remove old comments from TabVoice
3845 2006-04-20 Graham Percival <gpermus@gmail.com>
3847 * Documentation/user/instrument-notation.itely: added Erlend's
3848 latest doc patch, thanks!
3850 2006-04-19 Erlend Aasland <erlenda@gmail.com>
3852 * lily/include/slur.hh:
3854 * lily/phrasing-slur-engraver.cc:
3855 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3856 acknowledge_extra_object () from Phrasing_slur_engraver:: and
3857 Slur_engraver:: and putting it in
3858 Slur::auxiliary_acknowledge_extra_object ().
3860 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3862 * lily/note-collision.cc: fix a comment
3864 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
3866 * stepmake/bin/add-html-footer.py: fix footer position in
3867 generated html files: before </body> and </html> tags.
3869 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
3871 * scripts/GNUmakefile: revert last "fix", which rather broke make.
3872 Earlier successive `make' commands finally compiled ok.
3874 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3876 2006-04-18 Erlend Aasland <erlenda@gmail.com>
3878 * lily/include/stem-tremolo.hh:
3879 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3883 * lily/include/lookup.hh: add rotated_box ()
3885 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
3887 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
3888 been generated. Fixes "can't get `--help'" bug after make clean.
3890 * THANKS: alphabetize contributors.
3892 2006-04-17 Graham Percival <gpermus@gmail.com>
3894 * Documentation/user/instrument-notation.itely: added Erlend's
3895 tabs and banjo doc patch. Thanks!
3897 2006-04-17 Erlend Aasland <erlenda@gmail.com>
3899 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3901 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3903 * scm/output-lib.scm: add some more predefined string tunings.
3905 * Documentation/user/instrument-notation.itely: and doc them.
3907 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
3909 * ly/engraver.ly: Remove obsolete comments.
3911 * ly/gregorian-init.ly: Define default layout block.
3913 * input/puer-fragment.ly: Updated and extended.
3915 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
3917 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3918 pdf conversion behaviour.
3920 * flower/file-name.cc (dir_name)
3921 (get_working_directory): Move from relocate.cc.
3923 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3925 * lily/relocate.cc: Encapsulate sys/stat.h in
3928 2006-04-14 Graham Percival <gpermus@gmail.com>
3930 * Documentation/user/ various: small updates from Cameron
3931 and Juergen, thanks!
3933 * Documentation/user/ various: small updates of my own.
3935 * THANKS: 2.7 -> 2.8.
3937 2006-04-11 Graham Percival <gpermus@gmail.com>
3939 * scm/define-context-properties.scm: typo.
3941 * Documentation/user/ : many more small updates.
3943 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
3945 * scm/define-music-types.scm: disposed "docme".
3947 2006-04-11 Erlend Aasland <erlenda@gmail.com>
3949 * lily/hairpin.cc: make niente circles a bit smaller.
3951 2006-04-10 Erlend Aasland <erlenda@gmail.com>
3953 * mf/GNUmakefile: remove redundant mftrace check. Also remove
3954 get-pfa and get-*-fonts targets.
3956 2006-04-10 Graham Percival <gpermus@gmail.com>
3958 * THANKS, Documentation/user/ basic-notation, advanced-notation,
3959 music-glossary, programming-interface: more minor fixes
3962 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3964 * scm/define-context-properties.scm: another old \property update.
3965 This time tested for compiling!
3967 2006-04-10 Erlend Aasland <erlenda@gmail.com>
3969 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3971 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
3973 * scm/define-context-properties.scm (all-user-translation-properties):
3974 * Documentation/user/global.itely (Page formatting): Compile fix.
3976 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
3978 * Documentation/user/advanced-notation.itely (Polymetric
3979 notation): Update the example to use the "+" symbol and add link
3980 to input/test/compound-time.ly.
3982 2006-04-08 Graham Percival <gpermus@gmail.com>
3984 * scm/define-grob-properties.scm: clarify docs for #'direction.
3986 * scm/define-context-properties.scm: update old \property override.
3988 * Documentation/user/ advanced-notation, global, lilypond-book:
3989 more minor doc updates.
3991 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3993 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3995 * scm/backend-library.scm (search-gs): oops.
3997 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3999 * scripts/lilypond-book.py (output): use base, not filename for href.
4001 * scm/backend-library.scm: only look for gs.
4003 * scripts/lilypond-book.py (output): fix printfilename.
4005 * lily/parser.yy (music_function_musicless_prefix): fold together
4006 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4008 * lily/slur.cc (print): only set font-size if not set yet.
4010 * lily/slur-configuration.cc (add_score): improved layout of debug
4013 2006-04-05 David Feuer <David.Feuer@gmail.com>
4015 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4016 (draw_circle): Hopefully fixed regression.
4017 Improved documentation for several procedures.
4019 2006-03-04 Werner Lemberg <wl@gnu.org>
4021 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4023 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4025 * scripts/musicxml2ly.py (bindir): add dynamic
4028 2006-04-04 Graham Percival <gpermus@gmail.com>
4030 * Documentation/user/ basic-notation, advanced-notation, putting,
4031 instrument-notation, invoking, lilypond, THANKS: another ream of small
4032 fixes from the Doc Helpers.
4034 2006-04-03 David Feuer <David.Feuer@gmail.com>
4036 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4038 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4040 * Cleaned up interfaces between PostScript and Scheme, and moved
4041 computations from PostScript to Scheme:
4043 * music-drawing-routines.ps
4044 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4045 with stroke_and_fill throughout.
4046 (euclidean_length, print_letter, draw_box): Deleted unused
4047 procedures. If someone needs draw_box, implement it using
4048 draw_round_box; don't duplicate code.
4049 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4050 Refactored/cleaned up interfaces.
4053 * output-ps.scm: reordered arguments to PostScript functions to
4054 match new interfaces
4055 (glyph-string): Rewrote glyph-string.
4056 (grob-cause): Replaced string-append with format.
4057 (repeat-slash): Rewrote to do computation here.
4058 (round-filled-box): Rewrote to do computation here.
4060 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4062 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4064 * stepmake/stepmake/toplevel- targets.make: print help info about
4067 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4069 * input/regression/hairpin-circled.ly: new file
4071 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4073 * lily/hairpin.cc (print): add support for circled tip
4075 * scm/define-grob-properties.scm: add circled-tip parameter
4077 * scm/define-grobs.scm: init circled-tip to false
4079 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4081 * scm/music-functions.scm (quote-substitute): set
4084 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4086 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4089 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4091 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4093 2006-03-31 David Feuer <david.feuer@gmail.com>
4095 * scm/framework-ps.scm:
4097 * scm/output-ps.scm: glyph-string now produces smaller, more
4098 readable, and probably faster PostScript. Several findfont
4099 scalefont setfont instances changed to selectfont
4100 Hacked-up string-appends changed to formats.
4102 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4104 2006-03-30 Graham Percival <gpermus@gmail.com>
4106 * scm/lily-library.scm: make "no version" warning message more polite.
4108 * lily/music.cc: add double quotes to failed octave check.
4110 * Documentation/user/ advanced-notation, changing-defaults,
4111 instrument-notation, invoking, music-glossary: whole bunch of minor
4114 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4116 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4117 $(buildscriptdir) iso. depth.
4119 * VERSION (PACKAGE_NAME): release 2.9.1
4121 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4123 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4125 * VERSION (PATCH_LEVEL): bump version number.
4127 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4130 * lily/pango-font.cc (pango_item_string_stencil): use
4133 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4134 $(outdir)/emmentaler-%.svg): remove canary.
4136 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4137 glyphnames if we have a ttf font.
4139 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4141 * Documentation/user/advanced-notation.itely (Font selection):
4142 Corrected reference to the font-family-override.ly example.
4144 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4146 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4147 stem-tremolo object in the stem (or else the stem might not be
4150 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4152 * lily/ttf.cc (print_trailer): only print existing glyphs.
4154 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4156 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4157 position the tremolo based on the position of the notehead.
4159 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4160 notes and update the texidoc line with the new positioning rules.
4162 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4164 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4166 * scripts/lilypond-book.py (Module): set default for linewidth if
4169 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4171 * VERSION (PACKAGE_NAME): release 2.9.0.
4173 * input/regression/stem-tremolo-position.ly: new file.
4175 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4177 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4179 * lily/stem-tremolo.cc (print): position
4180 the tremolo depending only on the end of the stem
4181 and not on the notehead
4182 (raw_stencil): center, on the middle staff line, the
4183 flag that is closest to the end of the stem (previously
4185 (calc_width): add this callback to shorten a tremolo when
4186 it is beamed or it is stemup with a flag
4187 (style): add this callback to make a tremolo rectangular when
4188 it is beamed or it is stemup with a flag
4189 (rotated_box): this is like Lookup::beam but makes a rotated
4190 rectangle instead of a parallelogram
4192 * lily/stem.cc (calc_stem_info): make sure the stem
4193 is long enough to fit the tremolo
4194 (calc-length): reduce the length of tremolo stems since the
4195 tremolo code is now capable of better positioning
4197 * scm/define-grobs.scm: make calc_width the default beam-width
4198 callback for stem-tremolo and add the style callback
4200 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4202 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4205 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4207 * lily/ttf.cc (make_index_to_charcode_map): restore old
4210 2006-03-28 Werner Lemberg <wl@gnu.org>
4212 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4214 2006-03-28 Graham Percival <gpermus@gmail.com>
4216 * THANKS: update for 2.9, add section for Documentation helpers.
4218 * Documentation/topdocs/NEWS.tely: compile fix.
4220 * Documentation/user/ basic-notation, global, advanced-notation,
4221 examples.itely: minor fixes from mailist.
4223 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4225 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4228 * lily/ttf.cc (print_trailer): use it.
4230 * lily/pango-font.cc (get_unicode_name): new function.
4232 * lily/ttf.cc (make_index_to_charcode_map): move function from
4234 (print_trailer): substitute uniXXXX name if applicable.
4236 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4237 (pango_item_string_stencil): use it to generate uniXXXX names.
4239 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4240 note heads, for uniform widths in shape note output.
4241 (overdone_heads): hmm. remove them again.
4243 * scripts/lilypond-book.py (output): add links to filenames.
4245 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4247 * lily/note-collision.cc (get_clash_groups): only consider when
4248 Note_column::dir <> CENTER.
4250 * scripts/lilypond-book.py (get_option_parser): init output_name
4253 2006-03-24 Graham Percival <gpermus@gmail.com>
4255 * Documentation/topdocs/NEWS.tely: add @end itemize
4257 * Documentation/user/ global, advanced-notation: minor
4260 2006-03-23 Graham Percival <gpermus@gmail.com>
4262 * Documentation/user/ lilypond.tely, music-glossary,
4263 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4265 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4267 * mf/GNUmakefile: don't install .enc files.
4269 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4271 * VERSION (PATCH_LEVEL): bump to 2.9.0
4273 2006-03-22 Graham Percival <gpermus@gmail.com>
4275 * Documentation/user/advanced-notation.itely: minor fixes
4278 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4280 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4282 * branch lilypond_2_8
4284 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4286 * scripts/lilypond-book.py (samefile): new function, for windoze
4289 2006-03-21 Graham Percival <gpermus@gmail.com>
4291 * ly/engraver-init.ly: add info about StaffGroup.
4293 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4295 * input/regression/stem-direction-context.ly: idem.
4297 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4301 * input/regression/page-layout-twopass.ly: comment out \markup so
4304 * lily/instrument-name-engraver.cc (finalize): add to instrument
4305 name global System. This also fixes chopped instrument names, but
4306 doesn't crash when there are slurs/beams.
4308 * lily/slur-configuration.cc (add_score): disallow negative slur
4311 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4313 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4315 * lily/instrument-name-engraver.cc (process_music): kludge: add
4316 InstrumentName spanner to axis group of left bound. Fixes chopped
4317 off instrument names in EPS images.
4319 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4321 * scripts/abc2ly.py (option_parser): update to 2.7.40
4323 2006-03-20 Graham Percival <gpermus@gmail.com>
4325 * THANKS: move small doc contributors to SUGGESTIONS.
4327 * Documentation/user/ basic-notation, advanced-notation,
4328 global: small changes from mailist.
4330 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4332 * Documentation/user/advanced-notation.itely (Text marks): update
4333 for new rehearsalMarkAlignSymbol convention.
4335 * VERSION (PATCH_LEVEL): bump version.
4337 * input/test/instrument-name-align.ly: new file.
4339 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4341 * input/test/instrument-name-align.ly: new file. Document how to
4342 align instrument names.
4344 * lily/mark-engraver.cc: remove properties.
4346 * scm/define-context-properties.scm
4347 (all-user-translation-properties): remove align symbol properties
4348 for barnumber/reh. mark.
4350 * lily/break-align-interface.cc (self_align_callback): new
4351 interface, new function. Look at complete alignment. This handles
4352 tunable break alignments in case break-align-symbols are missing.
4354 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4356 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4358 * python/convertrules.py (conv): mark/bar number alignment rule.
4360 * lily/break-align-interface.cc (calc_positioning_done): also
4361 store offset from last visible break-alignment to its
4362 neighbor. This makes alignment on non-visible objects more reliable.
4364 * po/lilypond.pot (Module): ran po-replace.
4366 * input/regression/tie-single-manual.ly (Module): new file.
4368 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4369 look at has_manual_position_.
4370 (from_ties): set has_manual_position_ if tie has staff-position set.
4372 * lily/tuplet-bracket.cc (calc_positions): idem.
4374 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4377 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4379 * scm/define-markup-commands.scm (smallCaps): new markup command
4380 for turning a text to small caps using smaller font size and upper
4383 2006-03-17 Graham Percival <gpermus@gmail.com>
4385 * Documentation/user/ examples, instrument-notation,
4386 advnaced-notation: minor fixes from mailist.
4388 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4390 * Documentation/user/tutorial.itely (First steps): change example
4393 2006-03-17 Graham Percival <gpermus@gmail.com>
4395 * Documentation/user/ examples, advanced: minor changes from mailist.
4397 * THANKS: add Geoff Horton, for documentation stuff.
4399 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4401 * python/lilylib.py (system): revert have_select kludge.
4403 * Documentation/user/tutorial.itely (Commenting input files):
4404 update version numbers in doc.
4406 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4407 bound-padding to multi-measure-interface
4409 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4411 * input/test/engraver-example.ily: update version number.
4413 * VERSION (PACKAGE_NAME): release 2.7.39
4415 * lily/note-spacing.cc (get_spacing): heighten threshold where
4416 accidentals/arpeggios influence previous spacing fully.
4418 * lily/rest.cc (y_offset_callback): only use direction if
4419 staff-position wasn't set before.
4421 * lily/bar-number-engraver.cc: add support for
4422 barNumberAlignSymbol.
4423 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4425 * lily/pointer-group-interface.cc (set_ordered): new function.
4426 (add_unordered_grob): new function.
4428 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4429 to ordered, unless the opposite has been proved. This fixes
4430 random reordering of large object groups across linebreaks,
4433 * lily/main.cc (do_chroot_jail): printf format fix.
4435 * lily/tie-formatting-problem.cc (generate_configuration):
4436 multiply y-shift for dot with direction.
4438 * scm/define-markup-commands.scm (note-by-number): put (magstep
4439 size) in y-attach too.
4441 * Documentation/topdocs/NEWS.tely (Top): show override.
4443 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4444 direction for stems.
4446 2006-03-15 Graham Percival <gpermus@gmail.com>
4448 * Documentation/user/ changing-defaults, global: minor
4451 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4453 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4455 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4456 breakable items after uniformly stretched notes.
4458 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4459 outline with outer edge of note heads. This prevents infinity
4460 problems with tied whole notes.
4462 * scripts/lilypond-book.py (do_file): use os.popen
4464 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4466 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4468 * Documentation/user/invoking.itely: Add ragged-right to bug report
4471 2006-03-14 Graham Percival <gpermus@gmail.com>
4473 * Documentation/user/global.itely: small fix from mailist.
4475 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4477 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4478 file descriptor returned by tempfile.mkstemp() when writing
4479 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4482 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4484 * po/fi.po: newline bugfix.
4486 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4488 * scm/paper.scm (paper-alist): Rounding fixes.
4490 2006-03-13 Graham Percival <gpermus@gmail.com>
4492 * Documentation/user/ changing-defaults, instrument-notation,
4493 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4495 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4499 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4501 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4504 * python/lilylib.py (print_environment): move ps_page_count to
4507 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4509 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4511 * scm/framework-ps.scm (embed-document): new function. Use to
4514 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4516 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4518 * Documentation/user/instrument-notation.itely (Setting simple
4519 songs): Added \book{...} around the full example, so the separate
4520 markups are included in the printed example.
4522 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4524 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4527 * python/lilylib.py (system): rewrite system() using
4528 subprocess. Remove >& redirection trickery.
4530 2006-03-11 Graham Percival <gpermus@gmail.com>
4532 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4533 notation-appendices.itely: minor fixes from mailist.
4535 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4537 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4538 unsplit man also needs images.
4540 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4542 * VERSION (PACKAGE_NAME): 2.7.38 released.
4544 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4546 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4549 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4551 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4552 respects the Score.skipTypesetting property.
4554 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4556 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4557 Prolog. No %%EOF after CFF file.
4559 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4561 * lily/constrained-breaking.cc (get_max_systems): used to return a
4563 (combine_demerits): use pointers to reduce copying data
4564 (calc_subproblem): idem
4565 (get_page_penalty): add page turn penalties
4567 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4569 * Documentation/user/invoking.itely (Invoking lilypond): better
4570 explanation of -e usage.
4572 * lily/main.cc (main_with_guile): don't append to
4573 init_scheme_code_string
4575 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4577 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4579 * scripts/convert-ly.py (do_options): don't print help for
4582 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4583 @code and @example. Update from texinfo.tex from CVS.
4585 2006-03-08 Graham Percival <gpermus@gmail.com>
4587 * Documentation/user/scheme-tutorial.itely: clarifies distances
4588 measured in staff-spaces.
4590 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4592 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4593 consider[k] is true.
4595 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4597 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4598 consider columns that have originals. Unifies spacing for mm
4599 rests around line breaks.
4601 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4602 (set_text_rods): idem.
4603 (calculate_spacing_rods): new function: share code between
4604 set_text_rods and set_spacing_rods.
4605 (set_text_rods): take extents of bounds into account.
4607 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4609 * Documentation/user/basic-notation.itely (Writing music in
4610 parallel): don't use relative.
4612 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4614 * ly/music-functions-init.ly (Module): add shiftDurations
4616 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4618 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4620 * ly/engraver-init.ly: init vocalName to nil.
4622 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4624 * scm/music-functions.scm (music->make-music): bugfix,
4625 KeyChangeEvents are now handled correctly.
4627 * scripts/lilypond-book.py: Add --debug option.
4629 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4631 * python/lilylib.py: add tempfile.
4633 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4635 * VERSION (PACKAGE_NAME): release 2.7.37
4637 * python/lilylib.py (ps_page_count): remove make_ps_images().
4638 (ps_page_count): remove mkdir_p
4639 (system): remove cleanup_temp.
4640 (exit): remove lilypond_version_(check)
4641 (error_log): remove pseudo_filter_p
4646 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4649 * lily/accidental-engraver.cc (make_standard_accidental): only add
4650 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4652 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4653 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4654 Make incompatibilities.
4656 * scm/output-ps.scm (grob-cause): replace backslashes by /
4657 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4659 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4661 * cygwin/GNUmakefile: Install fixes.
4663 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4665 * lily/note-head.cc (head::get_balltype): Compile fix.
4667 * flower/file-name.cc (dos_to_posix): Flower string fix.
4669 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4671 * python/lilylib.py: pychecker cleanups.
4673 * scripts/lilypond-book.py
4674 (Lilypond_snippet.output_print_filename): pychecker cleanups
4676 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4678 * python/lilylib.py (underscore): remove identify() , warranty()
4680 * ps/music-drawing-routines.ps: change Border routine for GSView
4683 * lily/stem.cc (height): use quantize-positions. This triggers
4684 set_stem_lengths, so scripts on beamed stems are handled correctly.
4686 * lily/side-position-interface.cc (aligned_side): check if edges
4687 of script are inside staff. Fixes accent of edge of the staff.
4689 * input/regression/staccato-pos.ly: more examples.
4691 * stepmake/aclocal.m4 (depth): fix bashism.
4693 * lily/lyric-combine-music-iterator.cc: move from
4694 new-lyric-combine-iterator.cc
4695 (process): add pending_grace_lyric_ member to delay lyrics on
4698 * lily/system-start-text.cc (print): suicide if we don't have any
4699 elements. Fixes hara kiri'd instrument names.
4701 * scripts/mup2ly.py (Module): remove.
4703 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4705 * Documentation/user/global.itely (A single music expression):
4706 close @lilypond properly
4708 * lily/volta-bracket.cc (modify_edge_height): change from
4709 after_line_breaking_callback. Suicide last bracket if appropriate.
4711 * python/lilylib.py: strip getopt support
4713 * scripts/etf2ly.py (do_options): use optparse
4715 * scripts/midi2ly.py: optparse, strip lilylib copy.
4717 * scripts/abc2ly.py (voices): use optparse.
4719 * stepmake/stepmake/generic-vars.make: new function absdir.
4721 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4723 * scripts/lilypond-book.py (find_file): use global_options for
4726 * scm/ps-to-png.scm (ps-page-count): prevent null characters
4729 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4731 * python/lilylib.py (get_global_option): ughness for extracting
4732 global options from lilylib.
4733 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4735 * scripts/lilypond-book.py (get_option_parser): use optparse for
4736 option handling. Put options in global_options variable.
4738 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
4740 * Documentation/index.html.in: clarify.
4742 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
4744 * scm/layout-page-layout.scm (write-page-breaks): add a
4745 music-system-heights property to the page layout output.
4747 * scm/page.scm (make-page-stencil): take footer into account when
4748 computing the 'space-left page property
4749 (annotate-space-left): take footer into account when annonating
4752 2006-02-28 Graham Percival <gpermus@gmail.com>
4754 * Documentation/user/ advanced-notation, global: more (final)
4755 docs for music expressions, removed special fermatas.
4757 2006-02-27 Graham Percival <gpermus@gmail.com>
4759 * Documentation/user/ basic-notation, global: minor changes
4762 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
4764 * scm/framework-ps.scm:
4765 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4766 layer for inf? and nan? from framework-ps to lily-library.
4768 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
4770 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4771 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4773 * buildscripts/substitute-encoding.py (Module): remove file.
4775 * mf/GNUmakefile: more PFA strippage.
4777 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4779 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4782 * scm/framework-ps.scm: remove font name munging.
4784 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4786 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
4788 * scm/markup.scm (define-markup-command): change
4789 def-markup-command to define-markup-command
4791 * scm/music-functions.scm (define-music-function): change
4792 def-music-function to define-music-function.
4794 * python/convertrules.py (conv): rules for def-music-function
4795 and def-markup-commands
4797 * Documentation/user/programming-interface.itely,
4798 input/no-notation/display-lily-tests.ly,
4799 input/regression/lily-in-scheme.ly,
4800 input/regression/markup-user.ly,
4801 input/regression/music-function.ly, input/regression/tie-chord.ly,
4802 scm/fret-diagrams.scm, ly/music-functions-init.ly,
4803 ly/gregorian-init.ly: use new macro names (define-music-function,
4804 define-markup-command).
4806 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
4808 * scripts/lilypond-book.py (main): write Makefile dependencies file.
4809 (output): add comments to lp-book latex output.
4811 * GNUmakefile.in (footifymail): use gmane address for webpage bug
4814 2006-02-23 Graham Percival <gpermus@gmail.com>
4816 * Documentation/user/ tutorial, global: minor changes.
4818 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
4820 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4821 blocks (for make 3.80)
4823 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4824 \notemode so that user should not have to explicitely type it.
4826 * scm/define-music-display-methods.scm: various
4827 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4830 * input/no-notation/display-lily-tests.ly: new tests for
4831 \applyOutput and \applyContext
4833 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
4835 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4836 changed it slightly so that the number of systems returned by
4837 solve () will be the same as the last value passed to resize
4838 (). I've also added more documentation, removed casts, fixed style
4839 problems and put in some recovery if constraints aren't satisfied."
4841 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
4843 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4844 for emacs < 22 compatibility.
4845 (count-rexp): Use it.
4846 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4847 substring juggling (Milan Zamazal).
4849 2006-02-23 Graham Percival <gpermus@gmail.com>
4851 * Documentation/user/ basic-notation, advanced-notation,
4852 global.itely, invoking.itely, tutorial,itely:
4853 minor fixes from mailist.
4855 * scm/define-markup-commands.scm: improve docs of \filled-box.
4857 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
4859 * Documentation/index.html.in: changes concern the previous release.
4861 * input/regression/+.ly: cultivate typographical terminology.
4863 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4865 * scm/define-grob-interfaces.scm (parentheses-interface): add
4866 padding to parentheses-interface.
4868 * Documentation/user/GNUmakefile: remove $(CROSS) support from
4869 Documentation/user/GNUmakefile. Use --disable-documentation for that.
4871 * VERSION (PATCH_LEVEL): release 2.7.36
4873 * lily/slur.cc: add avoid-slur (ugh.)
4875 * lily/slur-configuration.cc (fit_factor): oops, skip point if
4876 intersection gets smaller. This fixes slurs over extreme points.
4878 * lily/melody-engraver.cc (stop_translation_timestep): ignore
4879 stems with neutral-direction set.
4881 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4883 * lily/open-type-font.cc (load_table): format error.
4885 * lily/change-iterator.cc (process): format fix.
4887 * flower/include/international.hh (_f): idem.
4889 * flower/include/std-string.hh: add format printf attribute.
4891 * scm/define-grobs.scm (all-grob-descriptions): height of all
4892 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4894 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4897 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4899 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
4901 * input/regression/: upgraded syntax for some files.
4903 * THANKS: Add bughunters.
4905 2006-02-22 Graham Percival <gpermus@gmail.com>
4907 * Documentation/user/ invoking.itely, advanced-notation.itely,
4908 global.itely: long-awaited "let's make chapter 10 not suck"
4909 update. Rearrange chapter 10; now called "global issues",
4910 addresses file structure, etc. Some info from other files
4911 moved into global.itely.
4913 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4915 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4916 catch trill-span-event notes.
4918 * Documentation/user/examples.itely (Ancient notation templates): typo.
4921 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
4923 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4925 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4927 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4929 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4930 froum Laissez_vibrer_engraver.
4932 * ly/declarations-init.ly (repeatTie): add \repeatTie
4934 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4936 * scm/define-grob-properties.scm (all-user-grob-properties): add
4937 head-direction property.
4939 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4940 from_lv_ties. Take head direction argument.
4942 * lily/semi-tie-column.cc: rename from
4943 laissez-vibrer-tie-column.cc. Rename class too.
4945 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4948 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4950 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4952 (find_breaks): idem.
4954 2006-02-21 Graham Percival <gpermus@gmail.com>
4956 * Documentation/user/advanced-notation.itely: fixed make-moment]
4959 * Documentation/user/basic-notation.itely: more clarification to
4962 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4964 * lily/include/constrained-breaking.hh (class
4965 Constrained_breaking): new file.
4967 * lily/constrained-breaking.cc (resize): new file.
4969 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4971 * Documentation/user/advanced-notation.itely (Clusters): insert
4974 * lily/tie-column.cc (calc_positioning_done): support for
4977 * lily/tie-formatting-problem.cc
4978 (generate_extremal_tie_variations): factor out.
4979 (score_ties_configuration): annotate all tie
4980 (print_ties_configuration): new routine.
4981 (generate_configuration): nudge extremal ties outside of the head
4983 (score_ties_configuration): oops. convert to staff-space before
4984 determining position symmetry.
4986 2006-02-20 Graham Percival <gpermus@gmail.com>
4988 * Documentation/user/*-notation.itely: misc minor editing,
4989 shifting doc sections around.
4991 * Documentation/user/*-notation-itely, global.itely,
4992 changing-defaults.itely: added new stuff from NEWS.
4994 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
4998 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5000 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5001 lilypond --verbose for lp-book.
5003 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5004 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5006 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5007 $(buildscript-dir) iso. absolute depth.
5009 * buildscripts/genicon.py (dir): thinko.
5011 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5013 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5015 * scm/output-lib.scm: swap darkcyan/darkyellow
5017 * THANKS: Add bughunters.
5019 2006-02-19 Graham Percival <gpermus@gmail.com>
5021 * Documentation/user/programming-interfaces.itely: fixed example.
5023 * Documentation/user/instrument-notation.itely: fix @{ @}.
5025 * scm/script.scm: add avoid-slur for \open.
5027 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5029 * lily/tie-formatting-problem.cc (score_configuration): use
5030 sliding score for min-length.
5032 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5033 spaghetti for icons.
5035 * buildscripts/genicon.py (program_name): new file.
5037 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5039 (generate_configuration): for small ties, also look for collisions
5040 at Y + DIR*h + DELTA_Y.
5041 (get_variations): consider variation for dot positions too.
5043 * lily/side-position-interface.cc (aligned_side): take abs for
5044 quantized rounded position. Fixes tenuto below staff.
5046 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5047 markers when necessary.
5049 * lily/program-option.cc (internal_set_option): add
5050 strict_infinity_checking option.
5052 * scm/output-lib.scm (cyan): swap yellow and cyan.
5054 2006-02-19 Graham Percival <gpermus@gmail.com>
5056 * darwin.patch: trivial linenumber update.
5058 * Documentation/user/ {various}: `\context foo = named' changed
5059 to `\new foo = "name"' in docs.
5061 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5063 * scm/stencil.scm (annotate-y-interval): use it.
5065 * scm/lily-library.scm (interval-sane?): new function.
5067 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5070 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5073 * flower/include/std-vector.hh (iterof): add iterof macro.
5075 * lily/enclosing-bracket.cc (width): new function.
5077 * lily/align-interface.cc (align_elements_to_extents): reinstate
5080 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5082 * Documentation/index.html.in: fix spelling: thankyous.
5084 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5086 * lily/lyric-hyphen.cc: typo.
5088 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5090 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5091 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5094 * VERSION: release 2.7.35
5096 * lily/beam.cc (get_default_dir): oops. Take abs () for
5098 (get_default_dir): use extreme position criterion only in absence
5099 of forced stem directions.
5101 * VERSION (PATCH_LEVEL): bump VERSION.
5103 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5104 dependencies. Necessary for -jX builds.
5106 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5108 * lily/relocate.cc (setup_paths): Yet another const fix.
5110 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5112 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5114 * lily/relocate.cc (setup_paths): oops.
5116 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5118 * Documentation/index.html.in: order links: html before PDF.
5120 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5122 * lily/tie-column-format.cc (Module): remove.
5124 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5126 * lily/text-spanner.cc (print): idem.
5128 * lily/dynamic-text-spanner.cc (print): only print line if longer
5131 * lily/auto-change-iterator.cc (change_to): formatting.
5133 * lily/beam.cc (get_default_dir): take extreme note head as input
5136 * lily/tie.cc (get_default_dir): only look directions for visible
5139 * lily/side-position-interface.cc (aligned_side): oops. Don't
5140 mutiply with direction. This fixes quantized (staccato, tenuto)
5141 scripts below notes.
5143 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5144 direction. Fixes c-lyrics-center-align.ly
5146 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5148 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5151 * lily/std-string.cc:
5152 * lily/include/std-vector.hh (split_string): Move and rename from
5153 lily/include/misc.hh, lily/misc.cc. Update callers.
5155 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5157 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5159 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5161 * flower/test-file.cc: New file.
5163 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5166 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5168 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5170 * flower/include/file-storage.hh: remove file.
5172 * lily/include/midi-item.hh (class Midi_track): idem.
5174 * lily/include/source.hh (class Sources): idem.
5176 * lily/include/performance.hh (class Performance): use vector
5179 * flower/include/cons.hh (class Cons): remove file.
5181 * flower/include/flower-proto.hh: remove template cruft.
5183 * lily/include/font-metric.hh: use size_t not vsize for indices.
5185 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5188 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5190 * lily/include/paper-book.hh (class Paper_book):
5191 make get_system_specs() public.
5193 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5194 the force=10000 case if we don't have a current-best.
5196 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5199 * flower/include/flower-proto.hh: remove outdated templates.
5201 * scm/page.scm: use annotate-spacing
5203 2006-02-15 Graham Percival <gpermus@gmail.com>
5205 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5207 * THANKS: moved Erlend Aasland to contributors.
5209 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5211 * config.hh.in: remove HAVE_PANGO_16
5213 * lily/tuplet-bracket.cc (calc_positions): multiply with
5214 staff-space for beam case. This fixes tuplets+beams on scaled
5217 * config.hh.in: remove all Kpathsea related defines.
5219 * lily/dot-column.cc (side_position): reach stem via dots->
5220 head->stem. Inspect all stems for dot collisions.
5222 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5225 * lily/bar-number-engraver.cc (process_music): document function
5228 * lily/score.cc (default_rendering): add pscore, not systems
5231 * lily/paper-book.cc (get_system_specs): separate generation of
5234 * flower/include/std-vector.hh: don't include config.hh
5236 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5238 * flower/include/std-vector.hh: Better wrapper compatibility with
5241 * flower/include/flower-proto.hh: Remove cheap forward declaration
5244 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5246 2006-02-14 Graham Percival <gpermus@gmail.com>
5248 * Documentation/user/invoking.itely: add warning about command line.
5250 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5252 * lily/include/lily-proto.hh: add Prob, rm Page.
5254 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5256 * VERSION: release 2.7.34
5258 * lily/relocate.cc (framework_relocation): show canary if
5259 GHOSTSCRIPT_VERSION undefined.
5261 * GNUmakefile.in: remove $(VERSION) symlink.
5263 * lily/relocate.cc (setup_paths): add +
5265 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5267 * Documentation/index.html.in: specify sizes for all big HTML pages.
5269 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5271 * config.hh.in: remove @FRAMEWORKDIR@
5273 * lily/system-start-text.cc (get_stencil): new file: separate out
5274 system-start-delimiter text support.
5276 * input/**ly: replace \context with \new where appropriate.
5280 * lily/slur-scoring.cc (get_base_attachments): use
5281 robust_relative_extent. This fixes problems with empty paper-columns.
5283 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5285 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5287 * scm/define-music-properties.scm (all-music-properties):
5288 create-new property.
5290 * lily/context-specced-music-iterator.cc (construct_children):
5291 inspect 'create-new property iso. magical $uniqueContextId context
5294 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5296 * lily/context-key-manager.cc (Module): new file. Encapsulate
5297 object key generation.
5299 * lily/include/context-key-manager.hh (Module): new file.
5301 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5303 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5306 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5308 (reloc_b): excise --enable-framework-dir
5310 * lily/relocate.cc (framework_relocation): use getenv
5311 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5313 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5315 * flower/include/std-string.hh:
5316 * flower/include/std-vector.hh: Finish std:: conversion; move
5317 flower extensions from std:: namespace. Update users.
5319 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5320 their expansion to vector<*>. Update users.
5322 2006-02-10 Graham Percival <gpermus@gmail.com>
5324 * Documentation/user/invoking.itely: add example to File structure.
5326 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5327 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5329 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5331 * ly/paper-defaults.ly: typo.
5333 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5334 set_parent() for parentheses. This will make it show up in bbox
5337 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5338 ly:grob-common* functions.
5340 * lily/grob-scheme.cc (LY_DEFINE):
5341 ly:grob-common-refpoint-of-array: new function
5342 ly:grob-common-refpoint: new function
5343 ly:grob-relative-coordinate: new function
5345 * lily/instrument-name-engraver.cc (process_music): use
5346 Text_interface::is_markup(). This fixes \markup on instrument names.
5348 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5351 * lily/slur.cc (print): idem.
5353 * lily/tie.cc: add line-thickness for ties.
5355 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5357 * scm/output-svg.scm: Document diversion from GNU coding standards
5358 as a workaround for a bug in Microsoft Internet Explorer.
5360 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5362 * lily/instrument-name-engraver.cc (process_music): use
5363 is_markup() iso. is_string()
5365 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5367 * lily/percent-repeat-engraver.cc (process_music): only look at
5368 main_part_ for % repeats.
5370 * lily/stem-tremolo.cc (get_beam_translation): new function.
5371 (calc_slope): new function.
5372 (height): don't use real slope.
5374 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5376 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5377 new connect-to-neighbor, control-points and staff-padding
5378 properties to make ligature brackets showing up again.
5380 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5382 * VERSION: release 2.7.33
5384 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5387 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5388 remove applyOutput example.
5389 (Objects connected to the input): document \tweak, \parenthesize
5391 * lily/relocate.cc (prefix_relocation): allow "current"
5392 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5393 changing VERSION in a lily tree less painful.
5395 * input/regression/parenthesize.ly: new file.
5397 * scm/output-lib.scm (parenthesize-element): new function.
5399 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5401 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5403 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5404 cause: accidentals are caused by note heads, not note events.
5406 2006-02-08 Graham Percival <gpermus@gmail.com>
5408 * darwin.patch: small patch from Erlend, thanks!
5410 * Documentation/user/basic-notation.itely: add stem-neutral example.
5412 * Documentation/user/putting.itely: clarifications.
5414 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5416 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5417 note, add more guidelines to what should go into NEWS.
5419 * input/sakura-sakura.ly: document how to override font.
5421 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5423 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5425 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5427 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5429 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5430 convertrules. Add explicit grouping, needed for python2.2.
5432 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5434 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5436 2006-02-07 Graham Percival <gpermus@gmail.com>
5438 * Documentation/user/global.itely: fix line-width in (text) docs.
5440 * Documentation/user/lilypond-book.itely: same.
5442 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5444 * VERSION (PACKAGE_NAME): release 2.7.32
5446 * Documentation/topdocs/NEWS.tely (Top): document new variable
5449 * flower/include/array.icc (Message): remove file.
5451 * flower/include/std-vector.hh: make sure vsize and VPOS are
5452 defined for binary_search_bounds().
5454 * flower/std-string.cc (std): add to_string(long unsigned).
5456 * configure.in (gui_b): excise std_string option.
5457 (gui_b): excise std_vector option.
5459 * flower/string.cc (Module): excise flower array & string
5461 * flower/include/std-string.hh: excise flower string.
5463 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5465 * python/convertrules.py (lilypond_version_re_str): require
5466 only numbers and dots in \version string.
5468 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5470 * lily/system-start-delimiter.cc (print): allow style = text too.
5472 * lily/system-start-delimiter-engraver.cc
5473 (acknowledge_system_start_text): new function, also add add to
5474 support of system-start-text (instrument names). This fixes
5475 instrument names on piano staves.
5477 * lily/instrument-name-engraver.cc: rewrite. Use
5478 system-start-delimiter approach. This save memory and cpu.
5480 * scm/define-grobs.scm (all-grob-descriptions): remove
5481 instrument-name from break-alignment.
5483 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5485 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5487 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5490 * configure.in (std_vector): On by default.
5492 * lily/include/font-metric.hh:
5493 * lily/include/tfm-reader.hh:
5494 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5497 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5499 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5501 * VERSION (PACKAGE_NAME): 2.7.31
5503 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5504 EPS edge at 0, but take minimum with left-overshoot. This fixes
5505 cut off system start delims.
5507 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5508 hack: add to axis group if not added yet. This fixes hara kiri'd
5511 * lily/hara-kiri-group-spanner.cc
5512 (force_hara_kiri_in_y_parent_callback): fix signatures.
5514 * lily/hairpin.cc (print): check next hairpin to see whether or
5515 not to be continuing.
5517 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5519 * Remove trailing whitespace from makefiles.
5521 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5524 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5526 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5528 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5530 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5532 * configure.in: Use it.
5534 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5536 * scm/music-functions.scm (pitch-of-note): new function.
5538 * ly/music-functions-init.ly: add \octave and \addquote
5540 * lily/parser.yy (music_function_chord_body): softcode \octave.
5541 (lilypond_header): softcode \addquote
5543 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5545 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5546 array.hh, parray.hh at all. Getting ready to flip the
5549 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5551 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5554 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5556 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5558 * flower/include/array.hh: typo.
5560 2006-02-02 Graham Percival <gpermus@gmail.com>
5562 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5564 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5566 * flower/include/pqueue.hh: Derive from std::vector.
5568 * flower/include/parray.hh: Conform to std::vector interface.
5571 2006-02-02 Graham Percival <gpermus@gmail.com>
5573 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5575 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5577 * flower/file-path.cc (is_file): remove if 0 section.
5579 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5580 selecting afii61352.
5582 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5584 * flower/include/std-vector.hh (boundary): Oops, reverse.
5586 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5587 remove superfluous `d'.
5589 * flower/include/std-vector.hh (boundary, top): Detach from class.
5590 Remove empty vector shell.
5592 * flower/include/array.hh (reverse, swap): Detach from class.
5595 * flower/include/std-vector.hh
5596 * flower/include/array.hh (concat): Globally change to insert ().
5599 * flower/include/std-vector.hh
5600 * flower/include/parray.hh
5601 * flower/include/array.hh (elem, elem_ref): Globally replace by
5604 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5606 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5608 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5609 anticipate on identifier substitutions.
5611 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5613 * flower/include/std-vector.hh (insert): Remove, replace by
5614 std::vector interface. Update callers.
5616 * flower/include/array.icc (insert): Change signature to
5617 match std::vector interface.
5619 * flower/include/array.icc (vector_sort): Bugfix.
5621 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5623 * lily/parser.yy (output_def_head_with_mode_switch): new
5624 production. Result: dashes and underscores may be used in the
5627 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5629 * python/convertrules.py (conv): oops. One slash too much.
5631 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5633 * flower/include/std-vector.hh (sort): Remove, replace by
5634 ::vector_sort. Update callers.
5636 * flower/include/std-vector.hh (slice): Remove. Update callers.
5639 * flower/test-std.cc (vector_sort): New test.
5641 2006-02-01 Graham Percival <gpermus@gmail.com>
5643 * Documentation/user/putting.itely: fixes from Erik.
5645 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5647 * flower/test-std.cc: Add simple unit test for vector migration.
5649 * stepmake/stepmake/test*: Unit test support.
5651 * flower/include/std-vector.hh (del): Remove. Use erase (),
5654 * flower/include/array.hh (begin, end): Add.
5657 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5659 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5660 std::string not String.
5662 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5665 * lily/prob.cc (Prob): copy type_ too.
5667 * lily/lily-guile.cc (mangle_cxx_identifier): new
5668 function. Class_bla::foo_bar_[px] ->
5669 ly:class-bla::foo-bar[?!]. Changes throughout
5671 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5673 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5675 * lily/beam.cc (calc_direction): take dir from visible stem in
5678 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5680 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5681 Fix -1, >=0 boundary checks for unsigned vsize.
5683 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5684 loop for unsigned vsize.
5686 * configure.in (--enable-std-vector): New option.
5687 (--enable-std-string): On by default.
5689 * flower/include/std-vector.hh: New file. Enable switch to
5690 std::vector, update client code.
5692 2006-01-30 Graham Percival <gpermus@gmail.com>
5694 * scm/document-translation.scm: clarify "this context is also
5695 known as". Thanks, Werner!
5697 * Documentation/user/putting.itely: small fixes from Don Blaheta.
5699 * Documentation/user/invoking.itely: small fix from Don.
5701 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
5703 * scm/lily.scm (define-scheme-options): rename option
5704 preview-include-book-title to book-title-preview
5705 (define-scheme-options): move force-eps-font-include (from paper
5706 block) to eps-font-include -d option.
5708 * VERSION (PATCH_LEVEL): release 2.7.30
5710 * input/bach-schenker.ly (staffPiano): new file.
5712 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5714 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5717 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5719 * ps/lilyponddefs.ps: remove start-system, stop-system,
5720 start-page fluff. This saves putting { } code on the stack, fixing
5721 stack overflows when including EPS files.
5723 2006-01-29 Graham Percival <gpermus@gmail.com>
5725 * Documentation/user/putting.itely: minor fixes (comments on -devel).
5727 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
5729 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5731 2006-01-28 Graham Percival <gpermus@gmail.com>
5733 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5735 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
5737 * input/mutopia/claop.py: Update.
5739 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
5741 * input/regression/completion-heads.ly (texidoc): fix.
5743 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5745 * lily/tie-formatting-problem.cc
5746 (set_ties_config_standard_directions): use abs iso fabs for ints.
5748 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5750 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5751 little less than noteheight, to prevent overlaps in chords.
5753 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5754 head, and fudge stem-attachment.
5756 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5758 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5760 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
5762 * lily/main.cc (main): Debugging aid: catch exceptions.
5764 * flower/std-string.cc (to_string): Robustification. Fixes midi
5765 output with std::string.
5767 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
5769 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5771 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
5773 * Fix -DSTRING_UTILS_INLINED.
5775 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5777 * VERSION (PATCH_LEVEL): release 2.7.29
5779 * lily/relocate.cc (setup_paths): mingw uses std string too.
5781 * lily/*.cc: various fixes for substr(ARG).
5783 * lily/sustain-pedal.cc (print):
5785 * flower/file-name.cc (slashify): use std strings.
5787 * flower/string-convert.cc: remove publib.h
5789 * scm/define-markup-commands.scm (verbatim-file): new markup
5790 command \verbatim-file
5792 * Documentation/topdocs/NEWS.tely: fixup URLs
5794 * input/regression/alignment-vertical-manual-setting.ly (Module):
5797 * lily/align-interface.cc (align_elements_to_extents): overwrite
5798 translations with numbers in alignment-offsets from left bound
5800 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5801 (page-translate-systems): new function: take into account Y-offset.
5803 * Documentation/topdocs/NEWS.tely (Top): document new features.
5805 * input/regression/page-layout-manual-position.ly (Module): new
5808 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
5810 * flower/file-path.cc (path::parse_path): Oops.
5812 * Finish std::string interface. For now, use std:: marker
5813 throughout for easy s/r.
5815 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5817 * Documentation/user/putting.itely (Score is a single musical
5819 (Score is a single musical expression): more typos.
5821 * scm/page.scm (annotate-space-left): thinko.
5822 (annotate-page): more thinkos.
5824 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5826 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5827 for different \score blocks separately.
5828 (post-process-pages): put write-page-layout into paper block.
5830 * lily/output-def.cc (get_parser): new file.
5832 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5835 * lily/include/output-def.hh (class Output_def): add parser_ member.
5837 * input/regression/page-layout-twopass.ly (Module): new file.
5839 * scm/lily.scm: remove cpp hack.
5841 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5843 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
5845 * GNUmakefile.in (c-clean): New target.
5847 * flower/include/std-string.hh: String/std::string compatibility:
5848 Use NPOS for `not found' (iso -1), use ssize for length () and pos
5851 * flower/rational.cc:
5852 * flower/include/rational.hh:
5855 * flower/include/offset.hh:
5857 * flower/interval.cc:
5858 * flower/include/interval.hh:
5860 * flower/string-convert.cc:
5861 * flower/include/string-convert.hh: Use std::string [interface].
5864 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
5866 * Documentation/index.html.in: clean up.
5868 2006-01-25 Graham Percival <gpermus@gmail.com>
5870 * Documentation/user/putting.itely: another new untested doc section.
5872 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5874 * scm/layout-page-layout.scm (write-page-breaks): write
5875 \spacingTweaks #ALIST. Handle grace timing.
5877 * scm/: more imports.
5879 * scm/page.scm (make-page): add footer/header.
5880 (annotate-space-left): revise: only take page argument.
5881 (layout->page-init): new function.
5883 * scm/layout-page-layout.scm (write-page-breaks): preliminary
5884 version of the system/spacing/linebreak hack writing to the output
5886 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5889 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5892 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
5894 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5896 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5898 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5899 handling to page.scm
5901 * lily/prob-scheme.cc (LY_DEFINE): new file.
5902 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5904 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5907 * lily/music.cc (derived_mark): derive Music from Prob.
5909 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5911 * lily/prob.cc (Module): Implement Prob (Property Object), object
5912 with shared and r/w property alists.
5914 * lily/include/prob.hh (Module): new file. Declare Prob.
5916 * flower/string.cc: remove is_empty().
5918 * flower/include/string.hh (class String): remove String:: qualifier.
5920 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5921 substitute appropriate functions.
5923 * flower/include/string.hh (class String): remove to_str0 and
5924 is_empty(). S&R everywhere.
5926 2006-01-23 Graham Percival <gpermus@gmail.com>
5928 * Documentation/user/basic-notation.itely: add hairpin
5929 after-linebreak tweak to commonprop.
5931 * Documentation/user/putting.itely: added two new sections.
5933 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
5935 * flower/international.cc:
5936 * flower/include/international.hh:
5938 * flower/getopt-long.cc:
5939 * flower/include/getopt-long.hh: Use std::string [interface].
5942 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5944 * stepmake/stepmake/executable-rules.make: Add dependency on
5947 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
5949 * flower/file-path.cc:
5950 * flower/include/file-path.hh: Use std::string [interface].
5953 * flower/direction.cc:
5954 * flower/axis.cc: Unused. Remove.
5956 * configure.in (--enable-std-string): New option.
5958 * flower/std-string.cc:
5959 * flower/include/std-string.hh: New file.
5961 * flower/file-name.cc[STD_STRING]:
5962 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
5964 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5966 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
5968 * scm/define-markup-commands.scm (with-dimensions):
5969 with-dimensions markup command.
5971 * input/test/font-table.ly: use it.
5973 * lily/open-type-font.cc (glyph_list): new function.
5975 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5977 * lily/ttf.cc: remove ly:font-glyph-list scheme function
5979 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
5981 * ly/music-functions-init.ly (parallelMusic): new music function
5982 for parallel music entry.
5984 * scm/define-music-properties.scm (all-music-properties): new
5985 'void music property
5987 * scm/music-functions.scm (ly:music-message): make public, to be
5988 used in music function definitions
5990 * scm/lily-library.scm (collect-music-for-book): discard music
5991 when the 'void property is set.
5993 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5995 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5997 * mf/GNUmakefile: idem.
5999 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6001 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6003 * Documentation/user/notation-appendices.itely (The Feta font):
6006 * input/test/font-table.ly: new file. Generate font table within lily.
6008 * Documentation/user/notation-appendices.itely (The Feta font):
6009 use new font-table.ly file.
6011 * stepmake/stepmake/install-out-targets.make
6012 (local-install-outfiles): only create directory if
6013 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6015 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6017 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6019 * VERSION (PACKAGE_NAME): release 2.7.28
6021 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6022 the right font from a Mac dfont.
6023 (write-preamble): don't forget directory, only look at files.
6025 This fixes problems with TTF files in dfonts that don't match
6026 their PostScript names.
6028 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6029 PS name from TTF font.
6031 * input/regression/tie-manual.ly: document new feature.
6033 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6035 * VERSION (MY_PATCH_LEVEL): bump to .28
6037 * Documentation/user/basic-notation.itely (Ties): add tie examples
6040 * lily/tie-formatting-problem.cc (score_ties_configuration):
6041 symmetry penalties for outer ties.
6043 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6045 * lily/tie-formatting-problem.cc (generate_configuration)
6046 (set_manual_tie_configuration): skip non-pair manual
6047 tie-configuration, so you can set individual ties as
6049 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6051 * input/regression/tie-chord.ly: use generateTiePattern to
6054 * lily/tie-formatting-problem.cc (peak_around): new function.
6055 (score_configuration): use sliding criterion for staff line collisions.
6056 (score_configuration): idem for dot collisions.
6057 (generate_configuration): use separate stem_gap for gap to stem.
6059 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6060 separate penalty factors for x and y distance.
6061 (struct Tie_details): separate penalties for tip and center line collisions.
6063 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6065 * lily/tie-formatting-problem.cc (generate_configuration): make
6066 large ties avoid stafflines in the horizontal section.
6067 (score_configuration): use softcoded penalties
6068 (score_aptitude): idem.
6070 * lily/tie-helper.cc (from_grob): softcode tie details
6072 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6074 * lily/staff-symbol-referencer.cc (on_line): rename from
6077 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6079 * ly/music-functions-init.ly: remove duplicate tag.
6081 * lily/include/*.hh: GCC 4.1 fixes.
6083 006-01-16 Erlend Aasland <erlenda@gmail.com>
6085 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6087 * scm/define-music-types.scm: fix bug in desc. string
6088 for OverrideProperty
6090 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6092 * scripts/lilypond-book.py: bugfix
6094 * scm/define-music-types.scm: fix typos.
6096 2006-01-14 Graham Percival <gpermus@gmail.com>
6098 * Documentation/user/ basic-notation.itely, global.itely,
6099 advanced-notation.itely, instrument-notation.itely: small
6100 additions (bugs and commonly tweaked properties).
6102 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6104 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6105 detection of mingw build.
6106 (MINGW_BUILD): opps.
6108 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6110 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6113 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6115 * scm/music-functions.scm (skip->rest): add skip->rest
6117 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6119 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6122 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6123 config dirs. Aids debugging.
6124 (display_config): also display config files.
6126 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6128 * VERSION: release 2.7.27
6130 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6131 for determining bar size.
6133 * lily/staff-symbol.cc (print): place lines at distance line-positions
6135 * scm/define-grob-properties.scm (all-user-grob-properties): add
6138 * lily/staff-symbol.cc (height): new function.
6140 * input/regression/staff-line-positions.ly: new file.
6142 2006-01-06 Graham Percival <gpermus@gmail.com>
6144 * input/test/add-staccato.ly: remove reference to old file.
6146 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6148 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6149 lilypond binary too.
6151 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6153 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6155 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6157 * scripts/midi2ly.py: Bugfix: Declare datadir.
6159 * make/ly-rules.make:
6160 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6161 that seems to be gone). Fixes make web.
6163 * The grand 2005-2006 replace.
6165 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6167 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6169 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6170 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6171 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6172 like -dgs-font-load.
6174 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6175 remove absolute path to lilypond binary.
6177 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6179 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6181 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6183 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6185 * mf/GNUmakefile: remove broken dvips map symlink.
6187 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6190 * configure.in: Cosmetic fixes.
6192 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6194 * Documentation/user/music-glossary.tely (Pitch names): Added
6195 Spanish pitch names and durations, thanks to Ernesto Gancedo
6197 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6199 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6200 init. Fixes verbose printing of .scm files.
6202 * stepmake/aclocal.m4: add spaces before - options.
6204 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6206 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6207 of path search in local block variable.
6209 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6211 * configure.in (NCSB_DIR): --enable-ncsb-dir
6212 (LINK_GXX_STATICALLY): denko.
6214 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6216 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6217 use locate to find c059033l.pfb.
6219 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6221 * lily/tie-formatting-problem.cc
6222 (problem::generate_base_chord_configuration): Use my_round (was
6225 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6226 do not invoke mbrtowc.
6228 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6230 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6232 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6234 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6236 * Documentation/user/invoking.itely (svg): revise.
6238 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6240 * lily/lexer.ll: use sourcefilename iso. renameinput.
6242 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6244 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6245 <PostScriptName>.ttf instead of c059XXXttf.
6247 * lily/program-option.cc (LY_DEFINE): special support for
6248 --verbose, so it works before option init too.
6250 * mf/GNUmakefile (local-install): oops.
6252 * lily/lyric-hyphen.cc (print): oops.
6254 * buildscripts/pfx2ttf.fontforge: new file.
6256 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6257 ($(outdir)/%.ttf): new rule.
6259 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6262 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6265 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6267 * VERSION: release 2.7.26
6269 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6271 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6273 * lily/font-config.cc (init_fontconfig): verbosity.
6275 * THANKS: add Muziekacademie Lede.
6277 * scripts/musicxml2ly.py (print_voice_definitions): new function
6278 (print_score_setup): new function
6279 (convert): read part definition to output staves properly.
6281 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6284 * python/musicexp.py (Output_printer.__init__): use _ in data
6286 (Output_printer.unformatted_output): new function: no formatting,
6288 (Duration.get_length): remove isinstance() checks for
6289 Output_printer everywhere.
6291 * input/regression/lyrics-bar.ly (texidoc): add
6292 Separating_line_group_engraver.
6294 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6296 * lily/relocate.cc (framework_relocation): New function,
6297 factored from set_relocation ().
6298 (prefix_relocation): Rename from set_relocation ().
6299 (setup_paths): Use it.
6301 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6303 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6304 numbers. Patch by Erlend Aasland.
6306 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6308 * lily/font-config.cc (init_fontconfig): print warning if cache
6309 file is not existant.
6311 * lily/main.cc: don't use #ifdef but #if
6313 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6315 * lily/grob-property.cc (internal_set_property): don't abort on
6316 calculation-in-progress.
6318 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6320 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6321 connect-to-neighbor property not connect-to-other
6323 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6324 (LY_DEFINE): oops. don't forget protection.
6326 * flower/parse-afm.cc (Module): strip AFM handling completely.
6328 * lily/stencil-expression.cc: idem.
6330 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6332 * lily/function-documentation.cc (ly_add_function_documentation):
6333 use static member iso. Protected_scm
6335 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6337 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6339 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6341 * lily/relocate.cc (set_env_dir): New function.
6342 (set_relocation): Use it to fix setting PANGO_PREFIX.
6344 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6346 * input/regression/stem-direction-context.ly: remove rest.
6348 * lily/melody-engraver.cc (process_music): restart for bar lines.
6349 (acknowledge_slur): restart for slurs.
6351 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6353 * Documentation/user/invoking.itely: describe how to view SVG
6354 output using Inkscape which replace embedded fonts with OTF fonts.
6356 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6358 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6360 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6362 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6365 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6367 * VERSION (PACKAGE_NAME): release 2.7.25
6369 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6371 * input/regression/stem-direction-context.ly: new file.
6373 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6375 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6378 * ly/engraver-init.ly: add Melody_engraver
6380 * lily/beam.cc (calc_direction): use default-direction
6381 iso. get_default_direction()
6383 * scm/define-grob-properties.scm (all-user-grob-properties): add
6384 default-direction property.
6386 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6388 * lily/stem.cc (calc_default_direction): remove
6389 Stem::get_default_direction, use default-direction with callback
6392 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6394 * lily/melody-engraver.cc: new file. Acknowledge stems for
6395 interpolated stem directions.
6397 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6399 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6401 * lily/slur-configuration.cc (fit_factor): more robust check for
6402 point in curve X-extent.
6404 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6405 (outside_slur_callback): check for 'outside avoidance.
6407 * lily/slur-configuration.cc (score_extra_encompass): don't use
6408 bound->column() == avoid->column() for checking extents, as this
6409 doesn't work for accidentals.
6411 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6412 DynamicText hardcoding.
6414 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6415 crash if bound stem is NULL
6417 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6420 2005-12-22 Graham Percival <gpermus@gmail.com>
6422 * scm/define-markup-commands.scm: typo. @code{\raise}
6425 * darwin.patch: now used again, includes a
6426 required patch from fink.
6428 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6430 * po/TODO: mention gtranslator along with kbabel.
6431 * po/fi.po: update translations.
6433 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6435 * lily/relocate.cc (setup_paths): Bugfix.
6437 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6439 * lily/slur-configuration.cc (score_extra_encompass): don't use
6440 "avoid" choice for avoid-slur.
6442 * stepmake/bin/install.py (dest): don't create existing dir.
6444 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6446 * stepmake/bin/install.py: Remove file before copying.
6449 * stepmake/aclocal.m4: Do not substitute INSTALL.
6451 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6453 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6454 depend on link-tree.
6456 * lily/relocate.cc (setup_paths): only check path for non-absolute
6457 dir without directory part.
6459 * flower/file-name.cc (is_absolute): new method.
6460 (is_absolute): check root_ too.
6462 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6464 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6465 relocation code. Oops, don't comment out too much.
6467 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6470 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6473 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6475 * .cvsignore: Add install-sh.
6477 * autogen.sh (srcdir): Typo.
6479 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6481 * autogen.sh (srcdir): urg. Touch install-sh.
6483 * stepmake/bin/install-sh (Module): remove.
6485 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6487 * lily/include/relocate.hh: new file.
6489 * lily/relocate.cc: new file. Contain relocation logic.
6491 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6492 (main): read LILYPOND_VERBOSE as the first thing.
6494 * stepmake/aclocal.m4: remove INSTALL variable.
6496 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6497 separate target for making font symlinks.
6498 (documentation-dir): use $(if $(findstring )) for switching off
6501 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6502 something if DOCUMENTATION is no.
6504 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6506 * VERSION: release 2.7.24
6508 * lily/script-column-engraver.cc (stop_translation_timestep):
6509 delay adding to script-column.
6511 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6513 * python/convertrules.py (conv): rule for number-visibility
6515 * lily/slur-configuration.cc (score_extra_encompass): different
6516 distance measure for avoid and inside avoidance.
6517 (score_extra_encompass): use 1/(distance+eps) as penalty.
6519 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6520 encompass objects for generating slur curves.
6522 * lily/slur.cc: use details iso. slur-details property.
6524 * input/regression/slur-tuplet.ly: new file.
6526 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6528 * flower/include/offset.hh (class Offset): new operator /=
6530 * lily/tuplet-number.cc (print): new file, new interface.
6532 * scm/define-grob-properties.scm (all-user-grob-properties):
6533 remove number-visibility property.
6535 * lily/tuplet-bracket.cc (calc_control_points): new function
6536 (calc_connect_to_neighbors): new function.
6537 (print): remove text handling for tuplet numberdef.
6539 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6542 * lily/lily-guile.cc (robust_scm2booldrul): new function
6544 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6546 * lily/tuplet-bracket.cc (calc_position_and_height): use
6547 staff-padding to control whether tuplet brackets are over staves.
6549 * lily/grob.cc (suicide): clear dim_caches_.
6551 * lily/dimension-cache.cc (clear): new function.
6553 * lily/grob.cc (extent): swap order of min-extent and extent
6554 calculations. This fixes hara kiri staves.
6556 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6558 * lily/main.cc: Nitpick: relocation is not based on path, but on
6559 directory (location).
6561 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6563 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6565 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6567 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6569 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6571 * stepmake/stepmake/generic-vars.make (Module): idem.
6573 * stepmake/stepmake/executable-targets.make (default): use it.
6575 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6577 * make/GNUmakefile: don't install make rules.
6579 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6581 (prepend_env_path): more verbosity.
6583 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6585 * GNUmakefile.in: add dir argument for find command.
6587 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6588 fixes weird line numbers for point & click.
6590 * lily/source-file.cc (get_counts): init line/column/char counts.
6592 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6594 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6596 2005-12-16 Graham Percival <gpermus@gmail.com>
6598 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6599 minor fixes from Fredric. Thanks!
6601 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6603 * ly/music-functions-init.ly: add \bar and \clef music function
6605 * lily/lily-lexer.cc: idem.
6607 * lily/parser.yy (FIXME): remove BAR and CLEF.
6609 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6611 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6613 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6614 function arguments too
6616 * lily/main.cc (set_relocation): new function.
6618 * scripts/musicxml2ly.py (convert): add \version
6620 * lily/tie.cc: remove get_default_attachments()
6622 * VERSION (PACKAGE_NAME): release 2.7.23
6624 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6625 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6627 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6629 * lily/tie-formatting-problem.cc (score_ties): new function
6630 (get_variations): new function. Try flipping dirs for collisions.
6631 (generate_optimal_chord_configuration): new function. 1-opt search
6632 for better configuration.
6634 * lily/tie-configuration.cc: new file.
6636 * lily/tie.cc: junk Tie::get_configuration()
6638 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6639 (score_ties_configuration): new function.
6640 (generate_ties_configuration): new function.
6641 (generate_base_chord_configuration): new function.
6642 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6643 (set_manual_tie_configuration): Move body from tie-column-format.cc
6645 * input/regression/tie-dot.ly: new file.
6647 * lily/tie-formatting-problem.cc (score_configuration): score
6650 * lily/tie-helper.cc (get_transformed_bezier): new function
6652 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6654 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6655 -undefined suppress iso. -framework Python
6657 * scm/define-grobs.scm (all-grob-descriptions): set
6658 springs-and-rods (thanks Joe Neeman!)
6660 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6662 * input/no-notation/display-lily-tests.ly (test):
6663 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6664 changed from \tag #'(a b) to \tag #'a \tag #'b
6666 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6668 * Documentation/topdocs/NEWS.tely: strip out-www.
6670 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6672 * config.make.in (AR): add AR and RANLIB
6674 * flower/libc-extension.cc: include cassert
6676 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6679 2005-12-11 Graham Percival <gpermus@gmail.com>
6681 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6683 * stepmake/stepmake/python-modules-vars.make: define
6684 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
6686 * THANKS: added Johannes Schindelin.
6688 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6690 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6692 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6693 Span_arpeggio_engraver, add Tweak_engraver to Score context.
6695 * lily/parser.yy: reorganize file layout.
6697 * ly/music-functions-init.ly: add tweak music function.
6699 * lily/grob-info.cc (ultimate_music_cause): new function:
6700 recursively lookup causes.
6702 * lily/parser.yy (chord_body_element): allow music functions for
6703 post-events, allow music functions for chord elements.
6705 * lily/font-config-scheme.cc (display_fontset): add cast.
6707 * python/convertrules.py (FatalConversionError.sub_syms): \tag
6708 #'(a b) -> \tag #'a \tag #'b rule.
6710 * python/musicexp.py (Output_printer.dump_version): new function
6712 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
6714 * lily/parser.yy (FIXME): remove \tag
6715 (FIXME): remove tag_music() function.
6717 * lily/lily-lexer.cc: remove \tag
6719 * ly/music-functions-init.ly: define music-function "tag"
6721 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6723 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6725 * VERSION (PATCH_LEVEL): release 2.7.22
6727 * input/regression/lyric-hyphen-retain.ly: renew.
6729 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6732 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6733 iso. minimum-length property for rods.
6735 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6736 LyricSpace item to keep lyrics spaced apart.
6738 * ly/engraver-init.ly: remove Separating_line_group_engraver
6740 * Documentation/user/music-glossary.tely: do setfilename before
6743 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
6745 * Documentation/user/lilypond-book.itely: use `,´ after xref:
6746 See xref documentation, for example.
6748 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6750 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6751 pending_skip iso. ly_voice[-1]
6752 (main): add if __main__ for debugging.
6754 * python/musicxml.py (Accidental.__init__): new class.
6756 * scripts/musicxml2ly.py (progress): new function
6757 (musicxml_key_to_lily): don't barf on modeless keys.
6758 (create_skip_music): new function.
6759 (musicxml_spanner_to_lily_event): new function. Handle beams too.
6760 (musicxml_note_to_lily_main_event): new function.
6762 * python/musicexp.py (Music.__init__): add comment field.
6763 (NestedMusic.append): new routine.
6764 (SequentialMusic.print_ly): print comment.
6765 (ArpeggioEvent.ly_expression): new class
6766 (BeamEvent.ly_expression): new class
6767 (NoteEvent.__init__): support for cautionary/forced accs.
6769 * lily/lookup.cc (slur): normal order for array loop.
6771 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6774 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6777 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
6779 * scm/music-functions.scm: Make phrasing slurs follow voice direction
6781 * scripts/lilypond-book.py: Introduce option
6782 --preserve-line-breaks, for usage with srcltx
6784 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6786 * scm/output-lib.scm (print-circled-text-callback): draw circle
6787 around text using make-circle-markup.
6789 * Documentation/user/*: strip out-www from file names.
6791 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
6793 * Documentation/user/lilypond.tely (direntry): remove empty lines;
6794 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6796 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6798 * Documentation/user/GNUmakefile: idem.
6800 * Documentation/user/macros.itexi: strip out-www
6802 * python/rational.py: python 2.3 compat.
6804 * VERSION (PATCH_LEVEL): release 2.7.21
6806 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6807 option formatting, lilypond style.
6809 * python/musicexp.py: grab from Ikebana: a library for composing
6810 ly music expressions.
6811 (Output_printer): class for advanced .ly printing.
6814 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6815 convert to pythonesque structure.
6817 * python/rational.py: PD rational number class.
6819 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
6821 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
6823 * lily/part-combine-iterator.cc: Minor bugfix
6825 * THANKS: Update bughunters
6827 2005-12-02 Werner Lemberg <wl@gnu.org>
6829 * mf/README: Document process for proper mf2pt1 conversion.
6831 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6834 * mf/feta-harmonica.mf: Removed. Unused.
6836 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6838 * scripts/lilypond-book.py (do_file): fix thinkos.
6840 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
6842 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6843 ($(outdir)/parser.cc):
6844 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6846 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
6848 * ly/titling-init.ly (tagline): it should be a space between
6849 "Music engraving by LilyPond" and the version number.
6851 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6853 * VERSION (PACKAGE_NAME): release 2.7.20
6855 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6857 * scm/define-markup-commands.scm (pad-to-box): new markup command.
6859 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6861 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6863 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6865 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6867 * kpath-guile/: remove directory
6869 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6870 file. Encapsulate kpathsea using commandline tools.
6872 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6875 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
6877 * Documentation/user/advanced-notation.itely (Setting automatic
6878 beam behavior): Correct a few typos. Thanks to David Bobroff.
6880 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6881 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6883 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6885 * scripts/*.py: gmane address for bugs.
6887 2005-11-28 Pal Benko <benkop@freestart.hu>
6889 * make/ly-rules.make: add -f switch to mv
6891 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6893 * lily/bar-line.cc: interpret it
6895 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
6897 * configure.in (--disable-documentation): New switch.
6899 * GNUmakefile.in: Use it.
6901 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6903 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6905 * scripts/lilypond-book.py (do_file): search chunks for
6908 * GNUmakefile.in: add copy step in between so we can lose the
6909 out-www directories.
6911 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6913 * lily/pango-font.cc (pango_item_string_stencil): put
6914 geometry.width into glyph-string too.
6916 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
6918 * scm/define-music-display-methods.scm (RevertProperty):
6919 (OverrideProperty): Use grob-property-path property, a list of
6920 symbols, instead of grob-property, which used to be a single
6922 (BassFigureEvent): a figure can be a plain number, not necessarily a
6925 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6927 * VERSION: release 2.7.19
6929 * lily/figured-bass-engraver.cc (process_music): check
6930 figuredBassCenterContinuations first.
6932 * scm/translation-functions.scm (format-bass-figure): make double
6935 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6938 * lily/system-start-delimiter-engraver.cc: move from
6939 Nested_system_start_delimiter_engraver, rename
6940 Nested_system_start_delimiter_engraver ->
6941 System_start_delimiter_engraver.
6943 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6944 bracket type from hierarchy.
6946 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6948 * lily/rest.cc (y_offset_callback): read staff-position.
6950 * scm/define-grob-properties.scm (all-user-grob-properties): don't
6951 mark after-line-breaking-callback as internal.
6953 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6955 2005-11-25 Werner Lemberg <wl@gnu.org>
6957 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6959 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6961 * stepmake/bin/add-html-footer.py (do_file): add google
6963 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6964 staff if first_start_ is true.
6966 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6968 * scripts/midi2ly.py (split_track): add __repr__ members.
6969 (track_first_item): only return Item if not None. This fixes a
6970 problem when dumping a track that starts with an empty channel.
6972 * python/midi.c: doc module.
6974 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
6976 * Documentation/user/global.itely (Creating MIDI files): Fix
6977 compilation problem.
6979 2005-11-22 Graham Percival <gpermus@gmail.com>
6981 * Documentation/user/basic-notation.itely: clarify dynamic
6984 * Documentation/user/advanced-notation.itely: add unicode
6985 escape control example, whatever that is. :)
6987 * Documentation/user/global.itely: added "removing dynamics
6990 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6992 * VERSION (PATCH_LEVEL): release 2.7.18
6994 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6995 System_start_delimiter_engraver by
6996 Nested_system_start_delimiter_engraver.
6998 * lily/nested-system-start-delimiter-engraver.cc (struct
6999 Bracket_nesting_node): new class.
7000 (struct Bracket_nesting_group): new class
7001 (struct Bracket_nesting_staff): new class.
7002 (process_music): create hierarchy of grobs. This allows separate
7003 tuning of different SSDs.
7005 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7006 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7008 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7010 * lily/side-position-interface.cc (aligned_side): multiply
7013 * lily/script-engraver.cc (make_script_from_event): allow setting
7016 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7018 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7020 * scm/define-grobs.scm (all-grob-descriptions): new grob
7021 NestedSystemStartDelimiter.
7023 * input/regression/system-start-heavy-bar.ly: new file.
7025 * lily/nested-system-start-delimiter-engraver.cc: new file.
7027 * lily/nested-system-start-delimiter.cc: new file.
7029 * input/regression/system-start-nesting.ly: new file.
7031 * scm/define-grobs.scm (all-grob-descriptions): use X side
7032 positioning for positioning braces for nested contexts.
7034 * lily/system-start-delimiter.cc (print): don't divide extent by
7036 (print): use style iso. glyph.
7037 (staff_bracket): translate glyph inside routine already.
7039 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7041 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7044 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7046 * scm/define-context-properties.scm
7047 (all-user-translation-properties): rename figuredBassFormatter
7048 from newFiguredBassFormatter.
7050 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7052 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7054 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7056 * lily/beam.cc (calc_beaming): new function.
7057 (calc_shorten): new function.
7059 * THANKS: add Edward Neeman.
7061 * input/regression/accidental-clef-change.ly: new file.
7063 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7065 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7067 * lily/clef-engraver.cc (inspect_clef_properties): reset
7068 localKeySignature for clef changes.
7070 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7072 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7073 add dummy definition that works in Linux and add information in
7074 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7076 * Documentation/user/changing-defaults.itely (Modifying context
7077 plug-ins): Add index for \with.
7079 * Documentation/user/music-glossary.tely (dal segno): Updated
7080 example to version >=2.6.
7082 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7084 * Documentation/user/instrument-notation.itely (Printing chord
7085 names): Reorder \chordmode and \repeat in one example.
7087 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7089 * VERSION: release 2.7.17
7091 * Documentation/topdocs/NEWS.tely (Top): add note about
7094 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7095 new function. Search region of 3 positions for best tie.
7096 (score_configuration): new function.
7097 (score_aptitude): new function.
7098 (generate_configuration): new function.
7099 (get_configuration): new function.
7100 (Tie_formatting_problem): new function
7102 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7104 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7106 * THANKS: add Eduardo Vieira & Ralph Little
7108 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7111 * lily/include/tie-formatting-problem.hh (class
7112 Tie_formatting_problem): add Tie_details to
7113 Tie_formatting_problem. Update calling conventions.
7115 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7118 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7120 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7122 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7123 scm/define-context-properties.scm: Maintenance bugfix: make
7124 ligature brackets work again by removing obsolete ligature
7125 primitive callback push/pop.
7127 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7128 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7131 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7133 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7134 used and do not call it a path.
7135 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7137 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7139 * lily/include/tie-formatting-problem.hh (class
7140 Tie_formatting_problem): new file.
7142 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7144 * Documentation/misc/ChangeLog-2.3: new file.
7146 * lily/audio-staff.cc (output): degarianize.
7148 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7150 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7151 Unset PYTHONOPTIMIZE. Fixes install if set.
7153 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7155 * python/convertrules.py (conv): add warning about drums.
7157 * make/stepmake.make: include toplevel-version.make after config.make.
7159 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7160 also allow python2.4
7162 * config.make.in (configure-srcdir): remove GXX GCC vars.
7164 * stepmake/aclocal.m4: don't do non-srcdir build with
7165 symlinks. Use inclusion, so the src directory name can be changed.
7167 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7169 * make/mutopia-vars.make:
7170 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7173 2005-11-13 Werner Lemberg <wl@gnu.org>
7175 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7176 but the affected path. This ensures that the (overlapping) outlines
7177 have the same direction, which is a necessary prerequisite for
7178 FontForge's algorithm to remove overlaps.
7181 * mf/feta-haak.mf: Formatting.
7182 (draw_bracket): Slightly modify outline to avoid an unnecessary
7184 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7185 them from the affected paths.
7187 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7189 * mf/README: remove xpm / accordion notes.
7191 * lily/tie-column-format.cc (set_chord_outline): add dots into
7192 skyline extents. This fixes tie formatting if the left head has dots.
7194 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7195 space inside the staff.
7196 (get_configuration): shift another position if necessary in case
7199 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7201 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7202 buildscript-dir iso. $(depth)/buildscripts.
7204 * tex/GNUmakefile (local-uninstall): remove
7205 music-drawing-routines.ps juggling.
7207 * stepmake/stepmake/install-targets.make (local-install-files):
7208 prepend src-dir to install targets.
7210 * lily/system-start-delimiter-engraver.cc
7211 (acknowledge_system_start_delimiter): use
7212 add_offset_callback(). This fixes translation of nested
7215 * lily/grob-closure.cc (add_offset_callback): only encaps in
7216 simple_closure if it's a procedure.
7218 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7221 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7222 remove-empty where pertinent.
7224 2005-11-12 Graham Percival <gpermus@gmail.com>
7226 * Documentation/user/instrument-notation.itely: added
7227 Cameron Horsburgh's multiple stanzas docs. Thanks!
7229 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7232 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7233 make picture in builddir, not srcdir.
7235 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7237 * VERSION: release 2.7.16
7239 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7242 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7244 * Documentation/user/examples.itely (Piano templates): Minor
7245 modification to the Piano centered lyrics example.
7247 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7249 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7252 * Documentation/user/point-and-click.itely: simplify p&c
7253 instruction: don't configure firefox. Put lilypond-invoke-editor
7254 in front of the browser.
7256 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7257 (run-browser): new function.
7259 * lily/parser.yy (Lily_lexer): recognize Book
7261 * lily/book.cc (clone): new function
7263 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7265 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7267 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7268 Maintenance bugfix: reduce number of font related warnings by
7269 updating naming conventions for glyph-name.
7271 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7273 * scm/define-grobs.scm (all-grob-descriptions): add
7274 rhythmic-grob-interface to TabNoteHead.
7276 * scm/layout-beam.scm (check-quant-callbacks): remove
7279 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7281 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7282 alignment of centered divisiones.
7284 * scm/scripts.scm (articulations): Maintenance bugfix:
7285 follow-into-staff -> quantize-position.
7287 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7288 plica head in porrectus deminutus.
7290 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7292 * make/lilypond.fedora.spec.in (Group): add %clean section.
7294 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7295 less then 1/5th of total length.
7296 (print): use gap too. Fixes tupletUp-single-bracket.ly
7298 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7299 events into EventChord. This fixes textspanners on mm rests. Fixes
7302 * lily/side-position-interface.cc (get_axis): read side-axis
7303 (set_axis): set side-axis.
7305 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7306 properties everywhere.
7308 * lily/spacing-spanner.cc (breakable_column_spacing): add
7309 average-spacing-wishes. Take maximum if not set.
7310 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7312 * scm/define-grobs.scm (all-grob-descriptions): add
7313 average-spacing-wishes.
7315 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7316 offset callbacks. This fixes alignment for Fingering objects.
7318 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7319 space for key - timesig combination.
7321 * input/regression/script-stem-tremolo.ly (Module): new file.
7323 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7326 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7327 Fixes: c-tremolo-script.ly.
7329 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7331 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7333 * scm/define-grobs.scm (all-grob-descriptions): remove
7334 self-X-offset. Fixes alignment of octavate-8.
7336 * scripts/lilypond-book.py (datadir): look in
7337 LILYPONDPREFIX/share/lilypond/current/
7339 * GNUmakefile.in: symlink current to <VERSION>.
7341 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7343 * lily/main.cc: eps listed as a backend.
7345 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7347 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7349 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7351 * lily/include/score.hh (class Score): remove texts_ member.
7353 * lily/beam.cc (set_stem_lengths): force direction callback.
7354 (print): read quantized-positions, so we can force
7355 Beam::set_stem_lengths to occur.
7356 (rest_collision_callback): use common X parent.
7358 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7360 * flower/file-path.cc (find): Bugfix: Return name of file found.
7362 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7363 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7364 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7366 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7368 * flower/offset.cc: idem.
7370 * mf/*.mf: update email address.
7372 * lily/font-config-scheme.cc: new file.
7374 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7376 * lily/*: cs.uu.nl -> xs4all.nl
7378 * VERSION (PATCH_LEVEL): release 2.7.15
7380 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7383 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7385 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7387 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7389 * lily/staff-performer.cc (process_music): add audio
7390 elements. This makes MIDI instrument changes work once again.
7392 * lily/main.cc (LY_DEFINE): add gmane address.
7394 * lily/beam.cc: remove calc_positions()
7396 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7397 original_ in private scope.
7398 (class Grob): drop pscore_ pointer, change to output_def pointer.
7399 (class Grob): cleanup class definition.
7401 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7403 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7405 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7406 absolute. Better diagnostics.
7408 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7409 This makes lilypond run from the build directory using argv0
7410 relocation (without any --prefix or LILYPONDPREFIX setting).
7412 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7414 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7416 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7417 with simple-closure.
7419 * lily/self-aligment-interface.cc (set_align_self): new function
7420 (set_center_parent): new function.
7422 * lily/side-position-interface.cc (set_axis): new function.
7424 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7427 * scm/define-grob-properties.scm (all-user-grob-properties):
7428 remove [XY]-offset-callbacks add [YX]-offset
7430 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7432 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7433 entry for time signatures after breathing signs. Bug report by
7436 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7438 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7439 not absolute, make it absolute using PATH.
7441 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7443 * python/midi.c (initmidi): Fix type for mingw.
7445 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7447 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7449 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7452 * stepmake/aclocal.m4: Support python cross compiling.
7454 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7457 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7459 * scm/output-lib.scm (chain-grob-member-functions): replace
7462 * lily/chained-callback.cc (Module): remove file.
7464 * lily/rest-collision.cc (force_shift_callback_rest): change to
7467 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7469 * lily/grob.cc (y_parent_positioning): remove axis argument from
7470 parent_positioning callbacks.
7471 (Grob): junk init code
7472 (get_offset): use generic property callbacks for
7473 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7474 (axis_parent_positioning): new function
7475 (axis_offset_symbol): new function
7476 (chain_offset_callback): new function
7477 (add_offset_callback): new function
7479 * lily/beam.cc (rest_collision_callback): change signature; this
7480 is now a chained callback.
7482 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7483 callback administration.
7485 * lily/simple-closure.cc: new file. Smob type that allows "grob
7488 (ly:make-simple-closure FUNC A B)
7490 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7493 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7496 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7498 * lily/rest.cc (polyphonic_offset_callback): remove.
7500 * lily/script-engraver.cc (try_music): remove bool* argument.
7502 * scm/script.scm (default-script-alist): set quantize-position
7505 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7507 * lily/side-position-interface.cc (aligned_side): move staff
7508 position quantization from
7509 Side_position_interface::quantised_position().
7510 (quantised_position): remove
7512 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7514 * input/regression/beam-quant-standard.ly: reindent, set
7515 debug-beam-quanting to #t.
7517 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7518 10000 if this is a "hard" concave beam.
7520 * lily/beam.cc (calc_least_squares_positions): change from
7521 calc_least_squares_dy
7522 (set_stem_lengths): this is now a chained callback.
7524 * lily/context-property.cc (execute_general_pushpop_property):
7525 bugfix override with procedure should have effect.
7527 * scm/define-grob-properties.scm (all-internal-grob-properties):
7528 remove position-callbacks.
7530 * scm/define-grobs.scm (all-grob-descriptions): use
7531 ly:make-callback-chain for positions property.
7533 * scm/layout-beam.scm (check-quant-callbacks): return list of
7536 * scm/lily.scm (type-p-name-alist): add callback-chain
7538 * lily/lily-guile.cc (type_check_assignment): type check failure
7539 is warning not message.
7541 * lily/grob-property.cc (try_callback): walk callback chain if
7544 * lily/chained-callback.cc: new file. new smob type.
7546 * lily/lily-guile.cc (procedure_arity): new function.
7548 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7550 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7552 2005-10-25 John Mandereau <john.mandereau@free.fr>
7554 * Documentation/user/instrument-notation.itely (Figured bass):
7555 describe new features
7557 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7559 * lily/beam.cc (calc_least_squares_dy): use property callback.
7561 * lily/beam-concave.cc (calc_concaveness): use property callback.
7563 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7565 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7569 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7571 * scm/layout-page-layout.scm (page-headfoot): annotate
7574 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7576 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7577 doesn't take y-space.
7579 * scm/paper.scm (paper-alist): fix A7 dimensions.
7581 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7583 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7584 src-wildcard, remove $(wildcard).
7586 * po/GNUmakefile (PO_FILES):
7587 * ps/GNUmakefile (PS_FILES):
7588 * tex/GNUmakefile (TEX_FILES):
7589 * cygwin/GNUmakefile (POSTINSTALLS):
7590 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7591 some wildcard calls.
7593 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7595 * THANKS: add Thomas Bushnell.
7597 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7599 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7600 (lilypond-main): Redirect to gui-main if 'gui is set.
7602 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7603 for alternative installations kludging s/share/lib/g
7606 * SConstruct (libdir_package_version): Define.
7608 * python/SConscript:
7609 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7612 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7614 * lily/main.cc: clarify --safe.
7616 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7618 * VERSION: release 2.7.14
7620 * Documentation/user/*.itely: remove minimumVerticalExtent.
7622 * scm/define-grobs.scm (all-grob-descriptions): remove
7623 RemoveEmptyVerticalGroup
7625 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7627 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7630 * python/convertrules.py (conv): add rules.
7632 * lily/grob.cc: remove is_empty()
7634 * lily/grob-property.cc: remove add_to_list_property().
7636 * scripts/convert-ly.py (datadir): add prefix switching hack to
7639 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7640 space-function tweak.
7642 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7644 * scm/define-grob-properties.scm (all-user-grob-properties):
7645 remove callback property.
7647 * lily/include/grob.hh (class Grob): remove property_callbacks_
7648 member. Properties of procedure type are assumed to be callbacks.
7650 * lily/ligature-engraver.cc (override_stencil_callback):
7651 rewrite. Use noteHeadLigaturePrimitive as source.
7653 * scm/define-grob-properties.scm (all-internal-grob-properties):
7654 remove ligature-primitive-callback
7656 * lily/include/dimension-cache.hh (class Dimension_cache): make
7657 class, with Grob as friend.
7659 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7660 has_extent_callback()
7662 * scm/translation-functions.scm (format-new-bass-figure): read
7663 figuredBassPlusDirection
7665 * scm/define-context-properties.scm
7666 (all-user-translation-properties): add figuredBassPlusDirection.
7668 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7670 * lily/align-interface.cc (set_ordered): new function.
7672 * lily/grob.cc (flush_extent_cache): rewrite.
7674 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7675 Interval pointer directly.
7677 * lily/main.cc (setup_paths): insert extra / .
7678 (setup_paths): junk cff entry.
7680 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7683 * lily/axis-group-engraver.cc (finalize): remove
7684 extraVerticalExtent, minimumVerticalExtent verticalExtent.
7686 * lily/grob.cc (Grob): don't set extent from ctor.
7687 (extent): use property callbacks.
7689 * lily/axis-group-interface.cc: remove set_axes() function.
7691 * lily/grob-property.cc (del_property): new function.
7693 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7695 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7697 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
7699 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
7701 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
7703 * mf/SConscript: Updates.
7705 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7707 * stepmake/stepmake/*:
7711 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7712 from any directory in build-dir. Cleanups.
7714 * make/srcdir.make.in: Remove.
7716 * lily/main.cc (setup_paths): Fix and document build-dir hack.
7718 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7721 * lily/SConscript: Remove ttftools.
7723 * SConstruct: Resurrect.
7725 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7727 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7730 * lily/paper-book.cc (add_score_title): put Paper_score title into
7733 * scm/translation-functions.scm (format-new-bass-figure): also
7734 allow plus in combination with _
7736 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7738 * VERSION: 2.7.13 released.
7740 * lily/note-collision.cc (check_meshing_chords): don't wipe
7741 stencil, merely set transparent.
7743 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
7744 (Top): document #'callbacks.
7745 (Top): document nested \override.
7747 * input/regression/figured-bass.ly: update for slash and pluses.
7749 * input/regression/figured-bass-continuation-forbid.ly (Module):
7752 * scm/translation-functions.scm (format-new-bass-figure): use
7753 slashed-digit if diminished is set.
7754 (format-new-bass-figure): add + if 'augmented is set.
7756 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7758 * input/test/piano-staff-distance.ly: remove file.
7760 * Documentation/user/advanced-notation.itely (Formatting cue
7761 notes): use length-fraction for making stems/beams smaller.
7763 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7766 * lily/new-figured-bass-engraver.cc: new property
7767 centerFiguredBassContinuations
7769 * Documentation/user/changing-defaults.itely (Difficult tweaks):
7772 * lily/context-property.cc (execute_general_pushpop_property):
7775 * input/regression/override-nest.ly: new file.
7777 * python/convertrules.py (FatalConversionError.subber): conversion
7778 rule for #'callbacks
7780 * input/regression/override-nest.ly: new function.
7782 * lily/parser.yy (music_property_def): allow \override #'a #'b =
7785 * lily/context-property.cc (lookup_nested_property): new function.
7786 (evict_from_alist): new function.
7787 (general_pushpop_property): new function.
7788 (execute_general_pushpop_property): rewrite. Support nested
7791 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7793 * lily/beam.cc: use length-fraction too.
7795 * scm/define-grob-properties.scm (all-user-grob-properties):
7796 remove property flag-width-function
7797 (all-user-grob-properties): remove space-function.
7799 * scm/layout-beam.scm: remove flag-width-function.
7801 * lily/beam.cc: remove flag-width-function
7803 * scm/layout-beam.scm: remove beam dir functions.
7805 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7807 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7808 for easier grace tweaks.
7810 * lily/beam.cc: remove dir-function.
7812 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7814 * lily/grob.cc: remove spacing-procedure.
7816 * lily/note-head.cc (calc_stem_attachment): new function.
7817 (internal_print): use callback to get glyph-name.
7819 * lily/grob-property.cc (get_interfaces): new function.
7821 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7823 * lily/stem.cc (calc_stem_end_position): new function.
7824 (calc_length): new function.
7825 document details for stem.
7826 remove Stem::get_direction()
7828 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
7830 * lily/grob-property.cc (set_callback): new function.
7832 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7834 * lily/item-scheme.cc: new file.
7836 * lily/bar-line.cc (before_line_breaking): remove function.
7837 remove bar-size-procedure, break-glyph-function
7839 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7841 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7843 * lily/system-start-delimiter.cc (print): suicide from
7844 here. Remove after_line_breaking_callback.
7846 * lily/script-interface.cc (calc_direction): use callback for direction.
7848 * lily/side-position-interface.cc (aligned_side): don't use
7849 Side_position_interface::get_direction directly. Use callback.
7851 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7853 (get_print_stencil): rename from get_stencil: create stencil with
7854 transparency, color and cause.
7856 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7858 * python/convertrules.py (conv): insert temporary warning rule.
7860 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7862 * lily/grob-property.cc (try_callback): remove marker if applicable.
7864 * lily/grob.cc: elucidate doc about after/before-line-breaking
7866 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7868 * lily/stem.cc (height): idem.
7870 * lily/stem-tremolo.cc: idem.
7872 * lily/slur.cc (height): don't use get_uncached_stencil()
7874 * lily/rest.cc (y_offset_callback): use offset callback
7875 iso. after-line-breaking callback.
7877 * lily/grob.cc: change after/before-line-breaking-callback to
7878 after/before-line-breaking dummy properties.
7880 * lily/include/grob.hh: remove Grob_status.
7882 * scm/define-context-properties.scm
7883 (all-user-translation-properties): remove verticalAlignmentChildCallback
7885 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7886 (calc_direction): use callback
7887 (calc_positions): use callback.
7889 * lily/tie.cc (calc_direction): use callback. Only call parent
7890 positioning for more than one tie.
7892 * lily/tie-column.cc (calc_positioning_done): use callback
7894 * lily/slur-scoring.cc (calc_control_points): use callback
7896 * lily/slur.cc (calc_direction): use callback.
7898 * lily/note-collision.cc (force_shift_callback): remove.
7900 * lily/dot-column.cc (force_shift_callback): remove. Use
7901 other_axis_parent_positioning.
7903 * lily/grob.cc (other_axis_parent_positioning): new function.
7904 (same_axis_parent_positioning): new function
7906 * lily/align-interface.cc (alignment_callback): remove function.
7908 * lily/note-collision.cc (calc_positioning_done): use callback.
7910 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7911 (calc_direction): idem.
7912 remove print function.
7914 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7916 * lily/dot-column.cc (calc_positioning_done): use callback.
7918 * lily/break-align-interface.cc (calc_positioning_done): use callback.
7920 * lily/beam.cc (calc_direction): use pseudo-property for beam
7922 (calc_positions): use callback
7924 * lily/align-interface.cc (calc_positioning_done): use
7925 callback. Fold fixed distance and normal alignment in one function.
7927 * lily/stem.cc (calc_stem_end_position): use callback.
7928 (calc_positioning_done): idem.
7929 (calc_direction): idem.
7930 (calc_stem_end_position): idem
7931 (calc_stem_info): idem.
7933 * lily/grob-property.cc (get_property_data): new function:
7934 (try_callback): new function.
7936 * scm/define-grob-properties.scm (all-user-grob-properties): doc
7939 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7941 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
7943 * lily/tie.cc (get_position): robustness fix. Don't crash if a
7947 * lily/include/*.hh (Module): compile fixes.
7949 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
7951 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
7952 as an argument for char-syntax: use (char-syntax (or nil 0))
7953 instead of (char-syntax nil), thanks to Milan Zamazal.
7955 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7957 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7960 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7963 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7965 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7966 add class_name() method.
7968 * lily/music-scheme.cc: remove ly:music-name.
7970 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
7972 * cygwin/postinstall-lilypond.sh: Remove cruft.
7974 * cygwin/postremove-lilypond.sh: Remove.
7976 * cygwin/GNUmakefile (default): Remove postremove rules.
7978 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7980 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7983 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7986 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7987 consider break index for broken spanner.
7989 * scm/define-markup-commands.scm (wordwrap-string): remove \r
7990 characters from string before splitting.
7992 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7994 * scm/framework-ps.scm (output-preview-framework): use
7995 is-book-title to determine whether to chop off the booktitle.
7997 * lily/paper-book.cc (systems): init from book-title-properties
7998 (add_score_title): init score-title-properties.
8000 * ly/paper-defaults.ly: add {score,book}-title-properties.
8002 * scm/document-backend.scm (lookup-interface): error message if
8003 using unknown interface.
8005 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8008 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8010 (make_bracket): new function.
8012 * scm/lily.scm (define-scheme-options): add paper-size option.
8014 * ly/declarations-init.ly (laissezVibrer): get paper size from
8017 * scm/translation-functions.scm: use \fontsize for changing the
8020 * scm/define-grobs.scm (all-grob-descriptions): set
8021 between-length-limit to 1.0
8023 * lily/tie-helper.cc: add between_length_limit_ detail property.
8025 * mf/feta-bolletjes.mf: typos.
8027 * lily/note-head.cc (internal_print): don't shadow idx
8028 parameter. This fixes wrong attachment for do shape heads.
8030 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8032 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8034 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8036 * scm/layout-slur.scm: rename from slur.scm
8038 * scm/layout-page-layout.scm: rename from page-layout.scm
8040 * scm/layout-beam.scm: rename from beam.scm
8042 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8043 bass-figure-interface
8045 * lily/new-figured-bass-engraver.cc (process_music): add
8046 implicitBassFigures property.
8048 * scm/define-markup-commands.scm (pad-x): new markup.
8050 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8051 minimumVerticalExtent on FiguredBass context.
8053 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8054 case the continuation crosses a line break.
8056 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8058 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8059 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8060 absolute file name bug.
8062 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8064 * VERSION (PACKAGE_NAME): release 2.7.12
8066 * input/regression/figured-bass-continuation-center.ly: new file.
8068 * input/regression/beam-outside-beamlets.ly: new file.
8070 * lily/beam.cc (set_beaming): don't clip edges.
8071 (connect_beams): don't clip edges.
8073 * lily/beaming-info.cc (clip_edges): new function.
8075 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8077 * Documentation/user/instrument-notation.itely (Figured bass):
8078 demonstrate extenders, update seealso links.
8080 * scm/titling.scm (marked-up-headfoot): change tagline
8081 handling. tagline = ##f will blank the tagline as well.
8083 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8085 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8087 * lily/new-figured-bass-engraver.cc (struct
8088 New_figured_bass_engraver): add new_music_found_ member.
8090 * lily/lilypond-version.cc (Lilypond_version): deal with
8091 incorrectly formatted version strings.
8093 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8094 New_figured_bass_engraver by default.
8096 * lily/ttf.cc (print_trailer): only define glyph names when
8097 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8099 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8101 * lily/horizontal-bracket.cc (make_bracket): new function.
8103 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8104 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8105 BassFigureLine, BassFigureAlignment
8107 * lily/new-figured-bass-engraver.cc (process_music): new file.
8109 * lily/figured-bass-continuation.cc: new file.
8111 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8114 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8116 * scripts/lilypond-book.py: Bug fix, put the quote around the
8117 actual score for LaTeX documents.
8119 * scm/define-grobs.scm (all-grob-descriptions): Change
8120 collapse-height of the SystemStartBracket grob to 5.0,
8121 so the bracket disappears for single stave score lines (similarly
8122 to SystemStartBraces).
8124 * Documentation/user/advanced-notation.itely (Polymetric
8125 notation): Clarify the use of compressMusic.
8127 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8128 that the grace spacer note in other staves need the same duration
8129 and document the stroke-style property.
8131 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8133 * Documentation/user/global.itely (Vertical spacing): document
8134 alignment-extra-space and fixed-alignment-extra-space.
8136 * Documentation/topdocs/NEWS.tely (Top): add entry.
8138 * input/regression/alignment-vertical-spacing.ly: new file.
8140 * python/convertrules.py (conv): add rule.
8142 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8144 * lily/align-interface.cc (stretch_after_break): new
8145 function. Read fixed-alignment-extra-space property.
8146 (align_elements_to_extents): read alignment-extra-space property.
8148 * lily/lily-guile.cc (robust_scm2dir): new function.
8150 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8151 (annotate-space-left): new function. Annotate space left on page.
8152 (annotate-y-interval): new function.
8153 (paper-system-annotate-last): new function. Annotate bottom-space.
8155 * mf/feta-beugel.mf (y):
8157 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8159 * VERSION (PACKAGE_NAME): release 2.7.11
8161 * scm/lily-library.scm (interval-translate): new function
8162 (interval-center): new function.
8164 * scm/page-layout.scm (paper-system-annotate): new function. Add
8165 arrows for dimensions.
8167 * scm/stencil.scm (dimension-arrows): new function.
8169 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8171 * input/regression/page-spacing.ly: add annotatespacing
8173 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8174 (LY_DEFINE): new function ly:paper-system-set-property!
8176 * Documentation/user/global.itely (Paper size): explain how to add
8179 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8180 correspond to GS's definition.
8182 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8184 (print): only connect to next bracket if the next one is alive.
8185 (print): set padding to 0.0 if the bound is a breakable
8186 column. This makes tupletFullLength brackets reach up to the staff
8187 line if it doesn't connect to the next line.
8189 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8191 * lily/bar-number-engraver.cc: correct docs.
8193 * scm/output-lib.scm (first-bar-number-invisible): rename from
8194 default-bar-number-visibility
8196 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8198 * scm/define-music-properties.scm (all-music-properties): remove
8201 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8203 * po/fi.po: refresh.
8205 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8207 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8209 (disappear): bugfix.
8211 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8213 * lily/include/paper-system.hh (class Paper_system): remove
8214 staff_extents_ member.
8216 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8218 * lily/include/paper-system.hh (class Paper_system): remove
8219 number_ variable. Remove is_title_. Remove break_before_penalty_
8221 * lily/paper-book.cc (systems): use 'number property iso. number_
8224 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8225 remove ly:paper-system-number.
8227 * scm/lily-library.scm (paper-system-title?): new function.
8229 * lily/book.cc (process): bugfix: flip ?: cases.
8231 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8234 * ly/music-functions-init.ly: add outputProperty music function.
8236 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8238 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8240 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8242 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8244 * lily/paper-system.cc (internal_get_property): new function.
8246 * Documentation/user/global.itely (Vertical spacing): refer to
8249 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8252 * input/regression/page-spacing.ly: new file.
8254 * input/regression/page-top-space.ly: new file.
8256 * lily/spacing-spanner.cc: cmath -> math.h
8258 * lily/paper-system.cc (read_left_bound): new function. Read
8259 line-break-system-details from left bound to determine extents.
8261 * Documentation/user/programming-interface.itely (Using LilyPond
8262 syntax inside Scheme): change applyxxx -> applyXxx.
8264 * ly/music-functions-init.ly: add outputProperty music function.
8266 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8268 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8270 * python/convertrules.py (conv): rule
8272 * ly/music-functions-init.ly: applyxxx -> applyXxx
8274 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8277 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8279 * flower/include/real.hh: include <math.h> iso. <cmath>
8281 * flower/include/offset.hh: include real.hh
8283 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8285 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8286 fix example, now that 'interfaces is no longer directly available.
8288 * lily/book.cc (process): don't crash if paper == NULL.
8292 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8294 * scm/define-music-types.scm (music-descriptions): set length and
8295 start-callback for QuoteMusic
8297 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8299 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8300 arguments. Fixes compilation error with gcc 3.3.
8302 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8304 * VERSION: release 2.7.10
8306 * stepmake/stepmake/python-module-rules.make
8307 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8309 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8312 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8314 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8315 -Werror. Otherwise GCC barfs over various optimizations.
8317 * scm/define-grob-properties.scm (all-internal-grob-properties):
8318 add note-head property
8320 * Documentation/user/instrument-notation.itely (Laissez vibrer
8323 * input/regression/laissez-vibrer-ties.ly: new file.
8325 * lily/laissez-vibrer-engraver.cc: new file.
8327 * lily/include/tie-column-format.hh: new file.
8329 * lily/tie-column-format.cc: new file.
8331 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8333 * lily/laissez-vibrer-tie.cc: new file.
8335 * lily/include/laissez-vibrer-tie.hh: new file.
8337 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8339 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8341 * scm/define-grobs.scm (all-grob-descriptions): add
8342 LaissezVibrerTie, LaissezVibrerTieColumn
8344 * lily/tie-column.cc (set_tie_config_directions): new function
8345 (final_shape_adjustment): new function.
8346 (shift_small_ties): new function.
8348 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8350 * lily/include/tie.hh (struct Tie_details): add x_gap_
8351 (struct Tie_configuration): add head_position_
8353 * lily/tie-column.cc (set_chord_outline): new function.
8355 * mf/cmr.enc.in: remove file.
8357 2005-09-11 Graham Percival <gpermus@gmail.com>
8359 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8361 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8363 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8364 reduce aliasing effects.
8366 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8369 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8371 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8373 * flower/include/real.hh: std::fabs too.
8375 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8377 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8379 * lily, flower: Include C++ iso C headers. Import namespace std
8382 * lily/side-position-interface.cc:
8384 * lily/note-head.cc:
8385 * lily/include/includable-lexer.hh:
8386 * flower/include/string-data.icc: Remove using std::*.
8388 * lily, flower: Include C++ iso C headers. Import namespace std
8391 * lily/side-position-interface.cc:
8393 * lily/note-head.cc:
8394 * lily/include/includable-lexer.hh:
8395 * flower/include/string-data.icc: Remove using std::*.
8397 * Documentation/user/instrument-notation.itely (Entering lyrics):
8398 Multiple latin-1->utf-8 conversion fix.
8400 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8402 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8404 * lily/tie.cc (get_configuration): also avoid dots for non-space
8407 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8409 * Documentation/user/instrument-notation.itely: Bugfix.
8411 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8413 * tex/GNUmakefile: don't install texinfo.tex
8415 * tex/ : cleanup: remove unused files.
8417 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8419 * flower/include/real.hh: using std::{isnan,isinf}
8421 * VERSION (PATCH_LEVEL): release 2.7.9
8423 2005-09-05 Graham Percival <gpermus@gmail.com>
8425 * Documentation/user/ instrument-notation.itely,
8426 advanced-notation.itely: minor tweaks.
8428 * input/test/script-chart.ly: add item padding.
8430 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8432 * flower/offset.cc: use math.h iso. <cmath>
8434 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8437 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8438 (widen-left-stencil-edges): new function. Fix alignment problems
8439 with LaTeX includegraphics.
8441 * lily/text-interface.cc (interpret_markup): use abort().
8443 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8445 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8447 * lily/tie.cc (get_configuration): update bezier shape as we
8449 (get_configuration): don't move large ties if we're outside of the
8452 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8454 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8456 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8458 * .cvsignore: Add auto-generated configure files and then some.
8460 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8462 * scm/define-grobs.scm (DynamicLineSpanner): Add
8463 X-extent-callback. Fixes hairpin-slur collision.
8465 2005-08-31 Graham Percival <gpermus@gmail.com>
8467 * Documentation/user/advanced-notation.itely,
8468 basic-notation.itely: minor changes.
8470 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8472 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8473 \linebreak between each .eps file if \betweenLilyPondSystem is
8476 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8477 music): Document the \linebreak
8479 * Documentation/user/lilypond-book.itely,
8480 input/tutorial/lbook-latex-test.tex,
8481 Documentation/user/examples.itely: Remove \usepackage{graphics}
8483 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8485 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8487 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8490 * scripts/lilypond-book.py (PREAMBLE_LY): define
8491 inside-lilypond-book
8492 (modify_preamble): new function. Insert \RequirePackage{graphics}
8493 when no {graphics found in preamble.
8495 2005-08030 Graham Percival <gpermus@gmail.com>
8497 * Documentation/user/basic-notation.itely, global.itely,
8498 tutorial.itely: misc small changes.
8500 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8502 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8505 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8507 * lily/tie-column.cc (new_directions): put Tie down on center
8510 * lily/script-interface.cc (before_line_breaking): use
8511 Grob::programming_error
8513 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8515 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8518 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8520 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8522 2005-08-29 Werner Lemberg <wl@gnu.org>
8524 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8525 the `*.scale.pfa' files to avoid warnings.
8527 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8529 * lily/tempo-performer.cc (process_music): idem.
8531 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8533 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8535 * Documentation/user/advanced-notation.itely (Text markup): not a
8538 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8540 * lily/staff-performer.cc (initialize): add tempo/name to
8544 2005-08-26 Graham Percival <gpermus@gmail.com>
8546 * Documentation/user/advanced.itely: add text-only example.
8548 * Documentation/user/invoking.itely: add index entries for
8551 * Documentation/user/ tutorial.itely, basic-notation.itely:
8552 small fixes suggested by Steve D. Thanks!
8554 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8556 * input/regression/markup-bidi-pango.ly: new file.
8558 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8559 standard. Remove #ifdef. Remove memleak.
8560 (text_stencil): use text_dir to decide how to composite items.
8561 (text_stencil): determine uniform text direction for the entire
8564 * scripts/lilypond-book.py (output_name): remove
8565 latex_filter_cmd. Non-portable to non-Unix systems.
8566 (get_latex_textwidth): use File.write and os.unlink() instead.
8568 * THANKS: add Vicente & Trevor.
8570 * lily/grob.cc (discretionary_processing): look up origin for
8571 programming_error too.
8573 * input/regression/tie-broken.ly: new file.
8575 * lily/tie-column.cc (set_chord_outlines): set outline for line
8578 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8580 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8581 unscaled transform, just translate stencils.
8583 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8586 * scm/define-markup-commands.scm (wordwrap-string): use
8588 (wordwrap-stencils): idem.
8591 (wordwrap-stencils): translate last line to right for
8592 text-direction = LEFT.
8594 * scm/define-grob-properties.scm (all-user-grob-properties): add
8597 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8599 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8600 when copying a Lily_parser object.
8602 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8604 * scm/define-markup-commands.scm (null): add null markup.
8606 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8608 * lily/item.cc: Add documentation of center-invisible
8610 2005-08-24 Graham Percival <gpermus@gmail.com>
8612 * Documentation/user/advanced-notation.itely: add info about
8615 * Documentation/user/programming-interface.itely: fix example
8616 involving raised text.
8618 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8620 * lily/beam.cc (print): fix X start/end points of isolated
8623 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8625 * lily/multi-measure-rest.cc (set_text_rods): new function.
8627 * lily/vertical-align-engraver.cc (process_music): call
8628 Align_interface::set_axis(). This forces #'elements to be ordered,
8629 preventing random vertical reordering of staves.
8631 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8632 add avoid-slur property.
8634 * Documentation/user/basic-notation.itely (Measure repeats): add
8635 countPercentRepeats example.
8637 * Documentation/user/advanced-notation.itely (Other text markup
8638 issues): remove remark about normal-font. We have \normal-text
8640 * input/regression/tie-chord.ly: add note about remaining bugs.
8642 * lily/tie.cc (print): try Tie_column::set_directions () if
8643 control-points not yet defined.
8645 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8647 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8648 extent. This fixes braces falling out of the EPS bbox.
8650 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8653 2005-08-23 Graham Percival <gpermus@gmail.com>
8655 * {various} : change #up->#UP and #down->#DOWN.
8657 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8659 * Documentation/user/advanced-notation.itely: clarify
8660 what objects handles text on a multimeasure rest.
8662 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8664 * VERSION (PATCH_LEVEL): release 2.7.7
8666 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8668 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8670 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8672 * input/regression/*.ly: formatting clean-up. Default layout
8673 before music expression.
8675 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8676 romanze28-2 example.
8678 * scm/ps-to-png.scm: remove dir-re function.
8679 (make-ps-images): generate page names, instead of globbing them.
8680 This brings down LilyPond memory usage for make web by a factor
8683 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8684 don't use glob. With 3000 files, globbing
8685 Documentation/user/out-www/ can take too much time.
8687 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8689 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8691 * input/regression/tie-manual.ly: new file
8693 * input/regression/tie-chord.ly: update.
8695 * flower/include/interval.hh (struct Interval_t):
8697 * lily/tie.cc (distance): new function
8698 (height): new function.
8699 (init): new function
8700 (Tie_details): new struct.
8702 * lily/skyline.cc (skyline_height): new function.
8704 * lily/tie-column.cc (set_chord_outlines): new function.
8705 (new_directions): read tie-configuration
8707 * lily/skyline.cc: fix ASCII art.
8709 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
8711 * python/convertrules.py (string_or_scheme): Fix spelling error
8713 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8715 * lily/tie-column.cc (set_directions): set directions only once.
8716 (add_configuration): new function.
8718 * lily/tie.cc (set_control_points): new function
8720 * lily/tie-column.cc (new_directions): new function.
8722 * ly/music-functions-init.ly: set 'pitch property
8723 iso. trill-pitch. This makes \relative work with \pitchedTrill
8725 * lily/tie.cc (get_configuration): new function. Don't generate
8726 control points, rather, generate configuration.
8727 remove head-pair property.
8729 * lily/include/tie.hh (struct Tie_configuration): new struct.
8731 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
8733 * Documentation/topdocs/NEWS.tely: clarify.
8735 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8737 * lily/tie.cc: remove minimum-length
8739 * scm/define-grob-properties.scm (all-user-grob-properties):
8740 remove staffline-clearance, y-offset
8742 * input/regression/tie-dots.ly (Module): remove.
8744 * lily/tie.cc (get_control_points): rewrite. Put short ties in
8745 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8747 * input/regression/tie-single.ly: new file.
8749 2005-08-21 Graham Percival <gpermus@gmail.com>
8751 * ly/bagpipe.ly: fix compile problem.
8753 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8755 * lily/midi-item.cc (name): new method.
8757 * lily/staff-performer.cc (acknowledge_audio_element): use
8758 signature of baseclass.
8760 * lily/engraver-group.cc (do_announces): move recursion call out
8763 * lily/drum-note-performer.cc (class Drum_note_performer): use
8764 process_music everywhere.
8766 * ly/performer-init.ly: add default children everywhere.
8768 * lily/paper-book.cc (output): call paper-book-write-midis
8769 directly: always write MIDI, even if no \layout {} block.
8771 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8773 * VERSION (PACKAGE_NAME): release 2.7.6
8775 * lily/percent-repeat-engraver.cc (try_music): don't print warning
8776 about not being able to handle repeat.
8778 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
8780 * Documentation/user/examples.itely (Piano templates):
8781 * lily/include/performer-group.hh: Remove last traces of
8782 Performer_group_performer. Fixes make web.
8784 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8786 * Documentation/user/examples.itely (Piano templates): change
8787 Engraver_group_engraver -> Engraver_group
8789 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8790 scm_stand_in_procs is not weak_any.
8792 * lily/volta-bracket.cc (print): don't use strcmp().
8794 * lily/volta-engraver.cc (process_music): use
8795 Text_interface::is_markup() for setting the 'text property of the
8798 * input/mutopia/claop.py (accents): update syntax to 2.6
8800 * scm/define-context-properties.scm
8801 (all-user-translation-properties): add countPercentRepeats.
8803 * Documentation/user/basic-notation.itely (Measure repeats): add
8804 isolated percent example.
8806 2005-08-18 Graham Percival <gpermus@gmail.com>
8808 * input/ {various}: change direction #1, #-1 to
8809 #up/#down or \fooUp, \fooDown.
8811 * Documentation/user/music-glossary.tely: #-1 to #down.
8813 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8814 to #up, #-1 to #down.
8816 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
8818 * lily/include/engraver-group.hh: rename.
8820 * lily/include/performer-group.hh: rename.
8822 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
8824 * input/test/script-abbreviations.ly: Removed some old LaTeX
8827 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
8829 * python/convertrules.py (conv): inside-slur -> avoid-slur.
8830 Remove functions. Remove if 1: constructs, reindent.
8832 * scripts/convert-ly.py (add_version): Add functions from
8835 * scm/script.scm (default-script-alist):
8836 s/priority/script-priority. Fixes script stacking. Backportme.
8837 (Fermata): Very low priority.
8839 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
8841 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8843 * input/regression/slur-script.ly: remove padding tweaks. Add
8846 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8847 time sigs and related stuff.
8849 * scm/define-grob-properties.scm (all-user-grob-properties): add
8850 @code{} tags to property description.
8852 * lily/include/line-group-group-engraver.hh (Module): remove file.
8854 * python/convertrules.py (conv): add rule for
8855 Engraver_group_engraver -> Engraver_group.
8857 * lily/include/performer-group-performer.hh: analogous.
8859 * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8861 * lily/context-def.cc (instantiate): check for
8862 Engraver_group_engraver and Performer_group_performer not
8863 Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8865 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
8867 * input/les-nereides.ly: Remove three fingering tweaks, update
8870 * input/regression/slur-script-inside.ly: Update, fix doc.
8872 * scm/script.scm: Update to avoid-slur.
8874 * scm/define-grob-properties.scm (avoid-slur): New property.
8876 * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8877 * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8878 outside_slur_callback if avoid-slur != #'inside.
8880 * scm/define-grobs.scm (Fingering, Textscript): No
8881 inside-slur/outside-slur preference.
8882 (DynamicLineSpanner): Always outside slur.
8884 * input/regression/slur-script.ly: More tests.
8886 2005-08-17 Graham Percival <gpermus@gmail.com>
8888 * Documentation/user/lilypond-book: fix notime entry.
8890 * Documentation/user/advanced-notation.itely: add info on
8891 getting an I rehearsal mark.
8893 * Documentation/user/putting.itely: reinstate "I", re-enforce
8894 the fact that \override numbers are the result of
8895 experimentation and personal taste.
8897 * Documentation/user/invoking.itely: update convert-ly bugs.
8899 2005-08-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8901 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8904 * lily/timing-translator.cc (initialize): don't initialize timing.
8906 * input/regression/stem-spacing.ly (Module): remove file.
8908 * input/regression/spacing-stick-out.ly: specify Score context for
8911 * input/regression/clefs.ly: remove spurious {}s
8913 2005-08-17 Heikki Junes <hjunes@cc.hut.fi>
8915 * Documentation/topdocs/NEWS.tely,
8916 input/regression/repeat-percent-count.ly: clarify a bit.
8918 2005-08-16 Nicolas Sceaux <nicolas.sceaux@free.fr>
8920 * input/no-notation/display-lily-tests.ly: delete
8921 display-lily-init call.
8923 * ly/music-functions-init.ly (displayLilyMusic): move
8924 display-lily-init call at top level, so that the user should not
8927 * scm/define-music-display-methods.scm (note-name->lily-string):
8928 retrieve note names directly from pitchnames using new function `rassoc'.
8929 (display-lily-init): note names list construction removed.
8931 2005-08-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8935 * lily/lily-parser.cc (get_header): copy module, instead of
8938 * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8941 * Documentation/user/basic-notation.itely (Measure repeats): add
8942 links to Counter grobs.
8944 * scm/define-grobs.scm (all-grob-descriptions): add
8945 DoublePercentRepeatCounter
8946 (all-grob-descriptions): add PercentRepeatCounter
8948 * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8949 also create counter grobs.
8951 * lily/separation-item.cc (extremal_break_aligned_grob): don't
8952 return grob without space-alist.
8954 * input/proportional.ly: tune staff-padding.
8956 * input/regression/repeat-percent-count.ly: new file.
8958 2005-08-16 Nicolas Sceaux <nicolas.sceaux@free.fr>
8960 * input/no-notation/display-lily-tests.ly: moved from
8961 input/regression/ to input/no-notation. Be sure to call
8962 `display-lily-init' before trying to use the display function.
8964 2005-08-16 Mats Bengtsson <mabe@s3.kth.se>
8966 * scripts/lilypond-book.py (option_definitions): Don't localize
8967 the empty string. Fixes bug when --psfonts was used with
8970 2005-08-15 Graham Percival <gpermus@gmail.com>
8972 * lily/tuplet-bracket.cc: simple build fix.
8974 * Documentation/user/putting.itely: use "we" instead of "I".
8976 * Documentation/user/basic-notation.itely: cautionary accidentals
8977 work with naturals, too.
8979 2005-08-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8981 * lily/tuplet-bracket.cc (calc_position_and_height): add
8982 staff-padding support.
8984 * input/proportional.ly: set staff-padding.
8986 * VERSION (PATCH_LEVEL): release 2.7.5
8988 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8989 fixes. Remove tweaks.
8991 * input/regression/tuplet-slope.ly: add a test case.
8993 * lily/tuplet-bracket.cc (calc_position_and_height): revert
8994 erroneous fix. Add spanner bounds to offset array with relative X
8997 * ly/engraver-init.ly: add Rest_engraver only once.
8999 * scm/define-music-display-methods.scm (KeyChangeEvent): only do
9000 (*parser*) lookup if (*parser*) != #f.
9002 2005-08-15 Jan Nieuwenhuizen <janneke@gnu.org>
9004 * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
9005 Cut-and paste update.
9007 * input/regression/slur-script.ly: Add example of reverting
9008 inside-slur for fingering.
9010 * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
9011 TextScript): Explicitly set inside-slur #f, forcing these out of slur.
9013 * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
9014 outside_slur_callback if inside-slur == #f (as opposed to unset).
9016 2005-08-14 Jan Nieuwenhuizen <janneke@gnu.org>
9018 * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
9019 encoding files are already removed.
9021 2005-08-15 Mats Bengtsson <mabe@s3.kth.se>
9023 * Documentation/user/advanced-notation.itely (Instrument names):
9024 Document a workaround for instrument names that collide with
9025 system start braces/brackets.
9027 2005-08-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
9029 * lily/rest-collision.cc (do_shift): spello.
9031 * input/proportional.ly: use #'used property. Set break-overshoot
9034 * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
9036 * lily/paper-column.cc: add #'used property
9038 * lily/mark-engraver.cc (stop_translation_timestep): set grob
9039 array for staves found.
9041 * lily/metronome-engraver.cc (stop_translation_timestep): set grob
9042 array for stavesFound.
9044 * lily/staff-spacing.cc (next_note_correction): add fixed and
9045 space to calling convention. This fixes spacing of accidentals
9048 * input/regression/spacing-accidental-stretch.ly: add barline -
9051 * scm/framework-ps.scm (page-header): add version number to
9055 * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
9057 2005-08-13 Graham Percival <gpermus@gmail.com>
9059 * Documentation/user/global.itely: add "fit as much as
9060 possible onto this page" example (Vertical spacing).
9062 2005-08-13 Jan Nieuwenhuizen <janneke@gnu.org>
9066 * buildscripts/fixcc.py: Fixes.
9068 2005-08-12 Graham Percival <gpermus@gmail.com>
9070 * Documentation/user/advanced-notation.itely: add markup
9071 example to Text spanners.
9073 2005-08-12 Mats Bengtsson <mabe@s3.kth.se>
9075 * Documentation/user/basic-notation.itely (Ties): Add example of
9076 tying a tremolo to a chord. Thanks to Steve Doonan.
9078 * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
9079 properties and move tieMelismaBusy to the list of written
9082 2005-08-12 Heikki Junes <hjunes@cc.hut.fi>
9084 * po/TODO: suggest to use a dedicated tool like kbabel.
9086 * po/fi.po: update using kbabel.
9088 2005-08-12 Jan Nieuwenhuizen <janneke@gnu.org>
9090 * *: Remove obsolete files. Nitpick run.
9092 * lily/lily-guile.cc (parse_symbol_list): Bugfix.
9094 2005-08-11 Jan Nieuwenhuizen <janneke@gnu.org>
9096 * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa. Copy SVG
9099 * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
9101 * lily/lily-guile.cc (parse_symbol_list): Rewrite. Grok multiple
9102 whitespace as symbol separator.
9104 * lily/side-position-interface.cc: Add slur-padding.
9106 * input/regression/slur-script.ly: Fixed. Backportme? This is
9107 quite a large fix, and it never worked in a stable release; so not
9108 really a regression.
9110 * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
9111 Update cut and paste code from Slur_engraver.
9113 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9116 * scm/define-grobs.scm (DynamicLineSpanner): Add
9117 dynamic-line-spanner-interface.
9118 (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
9120 2005-08-09 Jan Nieuwenhuizen <janneke@gnu.org>
9122 * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
9123 to_boolean () so that non-set 'inside-slur means false.
9125 * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
9126 slur has control-points. Skip script without direction. Always
9127 do_shift if script inside slur, even if slur not contained in
9128 script y-extent. Increment k in loop.
9130 2005-08-11 Mats Bengtsson <mabe@s3.kth.se>
9132 * scm/define-markup-commands.scm: Improved regexp to search for
9133 EPS bounding boxes and corrected call to ly:warning.
9135 2005-08-10 Nicolas Sceaux <nicolas.sceaux@free.fr>
9137 * Documentation/user/programming-interface.itely (Displaying music
9138 expressions): doc for \displayLilyMusic. Also some precisions in
9139 "Markup construction in Scheme"
9141 2005-08-10 Mats Bengtsson <mabe@s3.kth.se>
9143 * scm/define-markup-commands.scm (normal-text): Added 2 new
9144 markup commands, \normal-text and \medium (the latter thanks to
9147 2005-08-08 Graham Percival <gpermus@gmail.com>
9149 * Documentation/user/programming-interface.itely: fix @{ @}.
9151 * scm/define-markup-commands.scm: add linewidth info to
9152 \justify and \wordwrap, add "upright is the opposite of italic".
9154 * Documentation/user/advanced-notation.itely: shaped->shape,
9155 add (cons (markup "foo")) type of example to text markup,
9156 reword multi-measure rests section.
9158 * lily/note-heads-engraver.cc: changed Shaped->Shape in a
9159 comment. No actual code was touched.
9161 * Documentation/user/invoking.itely: add more info about
9162 \include. Thanks, Bruce!
9164 * THANKS: add Bruce Fairchild, alphabetise.
9166 * Documentation/user/global.itely: document \score{\header{}}
9169 * Documentation/user/basic-notation.itely: reword multi-measure
9170 rest discussion in Rests.
9172 2005-08-08 Mats Bengtsson <mabe@s3.kth.se>
9174 * Documentation/user/programming-interface.itely (Markup
9175 construction in Scheme): Corrected example and tried to clarify
9176 the implicit \line in the table.
9178 2005-08-07 Graham Percival <gpermus@gmail.com>
9180 * Documentation/user/instrument-notation.itely: moved
9181 some bagpipe info back into the bagpipe section. Somehow
9182 it ended up in the "other vocal issues" section?! :o_O
9184 2005-08-07 Jan Nieuwenhuizen <janneke@gnu.org>
9186 * scm/framework-ps.scm (dir-join): Rename from path-join (joins
9187 directories, not paths).
9189 2005-08-06 Jan Nieuwenhuizen <janneke@gnu.org>
9191 * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
9192 plain emmentaler/aybabtu. Backportme.
9194 * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
9195 missing dir correction.
9197 2005-08-05 Graham Percival <gperlist@shaw.ca>
9199 * scm/define-markup-commands: fix reversed justify/wordwrap
9202 2005-08-05 Jürgen Reuter <reuter@ipd.uka.de>
9204 * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
9205 lily/gregorian-ligature-engaver.cc,
9206 lily/include/ligature-engraver.hh,
9207 lily/include/coherent-ligature-engraver.hh,
9208 lily/include/gregorian-ligature-engraver.hh: make these classes
9209 truely abstract. This should fix some internal oddities such as
9210 duplicate as well as dead translator/property declarations, and
9211 also some dead code.
9213 * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
9214 bugfix: avoid message "junking empty ligature" on ligature
9215 brackets by collecting dummy grobs.
9217 2005-08-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
9219 * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
9221 * input/proportional.ly (staffKind): bugfix.
9222 (staffKind): updates by Trevor Baca.
9224 * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
9227 * lily/tuplet-bracket.cc (print): check whether edge-text is a
9230 * lily/beam.cc (rest_collision_callback): call position_beam() if
9233 * VERSION: release 2.7.4
9235 * input/regression/spacing-uniform-stretching.ly: new file.
9237 * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
9239 * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
9242 * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
9244 * input/proportional.ly: new file.
9246 * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
9249 * lily/tuplet-engraver.cc (finalize): new function. Reset right
9250 bounds to currentCommandColumn for the last step.
9251 (start_translation_timestep): if tupletFullLength is set, set
9252 bound to Paper Column
9254 * input/regression/tuplet-full-length.ly (indent): new file.
9256 * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
9257 clique of loose columns, eg. a set of grace notes in strict
9260 * input/regression/spacing-strict-spacing-grace.ly: new file.
9262 * lily/key-signature-interface.cc: change property name to
9265 * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
9268 * python/convertrules.py (conv): keyAccidentalOrder ->
9271 * lily/key-engraver.cc (create_key): always print a cancellation
9272 for going to C-major/A-minor, regardless of printKeyCancellation.
9273 (create_key): remove typecheck for visibility. This fixes key
9274 signature not being printed.
9276 * lily/spacing-determine-loose-columns.cc: new file.
9278 * input/regression/spacing-strict-notespacing.ly: new file.
9280 * lily/spacing-spanner.cc (generate_springs): rename from
9282 (generate_pair_spacing): new function.
9283 (init, generate_pair_spacing): set between-cols for floating
9286 * lily/spaceable-grob.cc (get_spring): new function.
9288 * lily/tuplet-bracket.cc (print): on the left, the overshoot is
9289 relative to the right edge of the prefatory matter.
9291 * lily/beam.cc (print): read break-overshoot to determine where to
9292 stop/start broken beams.
9294 * input/regression/spanner-break-overshoot.ly: new file.
9296 2005-08-04 Graham Percival <gperlist@shaw.ca>
9298 * ly/bagpipe.ly: updated.
9300 * Documentat/user/instrument.itely: un-comment out bagpipe example.
9302 2005-08-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
9304 * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
9305 support: now (de)crescs avoid slurs as well.
9307 * Documentation/user/instrument-notation.itely (Bagpipe example):
9308 comment out non-functioning bagpipe example.
9309 (Bagpipe definitions): idem.
9311 * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
9312 (Top): add proportionalNotationDuration example.
9314 * input/regression/spacing-proportional.ly: new file.
9316 * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
9319 * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
9320 fixes beams with a single stem (eg. beams across linebreaks.)
9322 * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
9324 * flower/rational.cc (operator +): prevent overflow. This fixes
9325 heavily nested tuplets.
9327 * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
9328 have to protect even those unlikely to be corrupted data members.
9330 2005-08-04 Graham Percival <gperlist@shaw.ca>
9332 * ly/bagpipe.ly: new file.
9334 * THANKS: added Sven Axelsson.
9336 2005-08-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
9338 * lily/spacing-engraver.cc (stop_translation_timestep): directly
9339 copy proportionalNotationDuration into currentMusicalColumn if
9342 * lily/spacing-spanner.cc (musical_column_spacing): if
9343 uniform-stretching set, fixed space is 0.0
9345 * input/regression/spacing-multi-tuplet.ly: show
9346 uniform-stretching property.
9348 * lily/spacing-spanner.cc (effective_shortest_duration): new function.
9350 * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
9351 (struct Spacing_options): new struct.
9353 * lily/spacing-basic.cc: new file.
9355 * lily/spacing-spanner.cc (note_spacing): remove outdated code:
9356 delta_t doesn't have to be smaller than shortest_playing_len
9358 2005-08-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
9360 * input/regression/markup-arrows.ly: new file.
9362 * lily/tuplet-bracket.cc: document new behavior.
9364 * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
9367 * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
9369 * scm/define-grobs.scm (all-grob-descriptions): set arrows as
9372 * lily/tuplet-bracket.cc: add edge-text property.
9373 add break-overshoot.
9374 (print): read break-overshoot.
9375 (print): read edge-text, add stencils.
9377 * mf/feta-arrow.mf: new file.
9379 * mf/feta-generic.mf: add feta-arrow.
9381 2005-08-03 Mats Bengtsson <mabe@s3.kth.se>
9383 * Documentation/user/lilypond-book.itely (An example of a
9384 musicological document): Added flag -o to dvips for people who use
9385 the default setting in teTeX where output is sent to the printer.
9387 * Documentation/user/global.itely (Vertical spacing): Added
9388 reference to the Axis_group_engraver which documents the *Extent
9391 2005-08-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
9393 * Documentation/user/basic-notation.itely (Tuplets): add note
9394 about nested tuplets. Remove BUG.
9396 * input/regression/tuplet-nest.ly: update: remove manual hack.
9398 * lily/tuplet-bracket.cc (print): use robust_scm2drul
9399 (print): manually call print() for subtuplets.
9400 (calc_position_and_height): add subtuplets to the
9401 support. Vertically shift outer tuplet
9403 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
9404 remove-first for Lyrics, ChordNames and FiguredBass
9406 * scm/define-grob-properties.scm (all-internal-grob-properties):
9407 use ly:grob-array? iso. grob-list?
9408 (all-internal-grob-properties): add tuplets grob-array.
9410 * lily/tuplet-bracket.cc (add_tuplet_bracket):
9413 2005-08-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
9415 * input/test/time-signature-staff.ly: new file.
9417 * ly/declarations-init.ly (center): escape to Scheme. Fixes
9418 spurious #<Music FingerEvent> errors. Backportme.
9420 2005-08-03 Mats Bengtsson <mabe@s3.kth.se>
9422 * Documentation/user/programming-interface.itely (Markup
9423 construction in Scheme): Corrected markup syntax in the
9426 2005-08-03 Graham Percival <gperlist@shaw.ca>
9428 * Documentation/user/instrument-notation.itely: small update
9429 to bagpipe notation docs; thanks Sven!
9431 * Documentation/user/basic-notation.itely: add link about trills.
9433 2005-08-02 Graham Percival <gperlist@shaw.ca>
9435 * Documentation/user/music-glossary: remove accidentally committed
9438 2005-08-02 Yoshinobu Ishizaki <isizaki@mte.biglobe.ne.jp>
9440 * lily/lily-parser.cc (get_header): new function. Enable multiple
9441 \header definitions.
9443 * lily/parser.yy (lilypond_header_body): use get_header.
9446 * scm/lily-library.scm (print-score-with-defaults): renamed
9447 $globalheader to $defaultheader
9449 * Documentation/user/global.itely (Creating titles): added short
9450 explanation that multiple headers are useable.
9453 2005-08-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
9455 * lily/module-scheme.cc (LY_DEFINE): new file.
9457 * Documentation/user/advanced-notation.itely (Font selection): add
9458 doco for make-pango-font-tree.
9460 2005-07-31 Graham Percival <gperlist@shaw.ca>
9462 * Documentation/user/music-glossary: more languages
9465 * Docuemntation/user/instrument-notation.itely: minor
9466 update for bagpipe example.
9468 2005-07-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9470 * input/regression/+.ly (TODO): add some text.
9472 2005-07-28 Graham Percival <gperlist@shaw.ca>
9474 * Documentation/user/invoking.itely: \score begins with music.
9476 * Documentation/user/ basic-notation.itely,
9477 instrument-notation.itely: minor changes.
9479 * Documentation/user/music-glossary.itely: began tenuto entry.
9481 2005-07-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
9483 * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
9485 * mf/feta-bolletjes.mf: swap up and down for aiken heads.
9487 2005-07-27 Graham Percival <gperlist@shaw.ca>
9489 * Documentation/user/examples.itely: remove bagpipe template.
9491 * Documentation/user/instrument-notation.itely: add bagpipe
9492 section, maybe fix quotes in lyrics. I hate text encoding.
9493 Clarify chord durations, more bagpipe stuff.
9495 2005-07-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9497 * lily/accidental-engraver.cc: formatting fixes.
9499 * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
9502 * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
9504 * lily/note-column.cc (arpeggio): new function.
9506 * lily/note-spacing.cc (get_spacing): also take arpeggio into
9507 account for spacing.
9509 2005-07-25 Jan Nieuwenhuizen <janneke@gnu.org>
9511 * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
9512 (setup_guile_env): Use it instead of nonstandard setenv. Fixes
9515 2005-07-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9517 * scm/lily.scm (lilypond-all): clear anonymous modules after
9520 2005-07-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9522 * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
9525 * VERSION: 2.7.3 released
9527 * Documentation/user/invoking.itely (Invoking lilypond): add
9528 LILYPOND_GC_YIELD documentation.
9530 * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
9531 scm_from_real / scm_make_real.
9533 * lily/main.cc (setup_guile_env): new function. Set GC min_yields
9534 higher. This increases memory footprint, but provides overall
9535 speedup of 15 to 20%.
9537 * lily/include/translator.hh (class Translator): remove
9538 PRECOMPUTED_VIRTUAL everywhere.
9540 * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
9542 * lily/context.cc (now_mom): non-recursive now_mom()
9544 * lily/include/profile.hh: new file.
9546 * lily/profile.cc: new file.
9548 * lily/grob.cc (Grob::Grob): look properties up directly.
9550 * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
9553 * lily/include/box.hh (class Box): smob Box type.
9555 * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
9557 * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
9558 protect() and unprotect(). Use throughout.
9560 2005-07-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
9562 * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
9564 * scm/define-music-display-methods.scm (markup->lily-string):
9565 markup elements can also be strings (without simple-markup
9568 2005-07-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9570 * lily/context.cc (where_defined): also assign value in
9573 * lily/bezier.cc (get_other_coordinate): use curve_coordinate
9574 (curve_coordinate): new function
9576 * lily/simple-spacer.cc (add_columns): only add rods between
9577 column i and begin/end if keep-inside-line is set (this repleces
9578 allow-outside-line as default)
9580 2005-07-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9582 * lily/tuplet-engraver.cc (start_translation_timestep): only read
9583 tupletSpannerDuration if applicable.
9585 * lily/font-size-engraver.cc (process_music): read fontSize only
9588 * lily/engraver*cc: use throughout.
9590 * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
9592 * lily/translator.cc (add_acknowledger): new file. Directly jump
9593 into an Engraver::acknowledge_xxx () method based on a grobs
9596 * lily/include/translator-dispatch-list.hh (class
9597 Engraver_dispatch_list): new struct, new file.
9599 * scm/define-context-properties.scm
9600 (all-internal-translation-properties): remove acceptHashTable,
9601 acknowledgeHashTable
9603 * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
9605 * lily/engraver-group-engraver.cc (Engraver_group_engraver):
9606 change acknowledgeHashTable to C++ member.
9608 * lily/rest-collision.cc (do_shift): use extract_grob_set().
9610 2005-07-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
9612 * scm/display-lily.scm: new file. Define a `display-lily-music'
9613 function, that displays the music expression given as an argument,
9614 using LilyPond notation.
9616 * scm/define-music-display-methods.scm: new file. Implementation
9617 of display methods for each music type.
9619 * ly/music-functions-init.ly (displayLilyMusic): new function for
9620 displaying music with LilyPond notation.
9622 * input/regression/display-lily-tests.ly: new regression test file
9623 for `display-lily-music'.
9625 * scm/markup.scm: remove obsolete debugging code (for printing
9626 markups with LilyPond notation).
9628 * scm/define-music-types.scm (music-name-to-property-table):
9629 * scm/clef.scm (supported-clefs): export, in order to be accessible
9630 from the (scm display-lily) module.
9632 2005-07-22 Jan Nieuwenhuizen <janneke@gnu.org>
9634 * Documentation/topdocs/NEWS.tely (Top): Typo.
9636 2005-07-22 Heikki Junes <hjunes@cc.hut.fi>
9638 * Documentation/index.html.in, Documentation/texinfo.css,
9639 stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9640 Documentation/bibliography/index.html.in,
9641 Documentation/bibliography/html-long.bst: revert css-width patch,
9642 it does not work with IE6.
9644 2005-07-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9646 * Documentation/texinfo.css: revert 760px hack.
9648 * VERSION: release 2.7.2
9650 * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9652 * Documentation/user/basic-notation.itely (Barnumber check): add
9655 * scm/music-functions.scm (skip-to-last): new function. Show only
9656 last showLastLength part of the \score.
9658 * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9660 * python/convertrules.py (conv): add ly:x-moment rule
9662 * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment -> ly:moment-X
9664 * Documentation/topdocs/NEWS.tely (Top): add new feature.
9666 * Documentation/user/instrument-notation.itely (Flexibility in
9667 alignment): options in subsections.
9669 * lily/lyric-engraver.cc (process_music): don't typeset text for _
9670 syllable text. Instead, assume that the previous lyric text is a
9673 * Documentation/index.html.in: revert 800x600 change.
9675 2005-07-19 Jan Nieuwenhuizen <janneke@gnu.org>
9677 * lily/main.cc (main): Remove invalid handle kludge.
9679 * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9680 (lambda): add gui define.
9682 2005-07-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9684 * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9686 * Documentation/user/instrument-notation.itely (Musica ficta
9687 accidentals): add section Musica ficta accidentals
9689 * lily/accidental-engraver.cc (make_suggested_accidental): new
9691 (make_standard_accidental): move into new function.
9692 (create_accidental): new function.
9694 * scm/define-grobs.scm (all-grob-descriptions): new Grob
9695 AccidentalSuggestion
9697 * lily/output-def-scheme.cc (LY_DEFINE): take default argument.
9699 * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9702 * Documentation/user/global.itely (Page formatting): document
9705 * scm/page-layout.scm (default-page-music-height):
9706 horizontalshift: new variable, shift all systems by
9707 horizontalshift to the right, to make space for instrument names.
9709 * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9711 * lily/input-scheme.cc (LY_DEFINE): take format commands.
9713 2005-07-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
9715 * lily/note-column.cc (dir): idem.
9717 * lily/spacing-spanner.cc (Module): idem.
9719 * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9721 * lily/include/paper-column.hh (class Paper_column): add
9722 non-static get_rank() member.
9724 * VERSION: release 2.7.1
9726 * scm/framework-null.scm: new file, used for benchmarking.
9728 2005-07-20 Heikki Junes <hjunes@cc.hut.fi>
9730 * Documentation/topdocs/INSTALL.texi, configure.in: fix
9731 version dependencies for fontforge and gs.
9733 * Documentation/index.html.in, Documentation/texinfo.css,
9734 stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9735 Documentation/bibliography/index.html.in,
9736 Documentation/bibliography/html-long.bst: optimize width of
9737 html for a 800x600 screen (width:760), increases printability
9738 when 'fit to page' is not set and readability in wide screens.
9740 * stepmake/bin/add-html-footer.py: add missing </p>.
9742 2005-07-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9744 * scm/define-markup-commands.scm (beam): use polygon in beam
9747 * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9748 all acknowledged grobs, and do potentially expensive merge and
9751 * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9753 * configure.in (reloc_b): add --enable-static-gxx to statically
9756 * lily/GNUmakefile (static-gxx-libs): new target
9757 static-gxx-libs. Create symlink to libstdc++.a
9759 * lily/new-lyric-combine-music-iterator.cc: rename to
9760 Lyric_combine_music_iterator
9762 * lily/lyric-combine-music-iterator.cc
9763 (Old_lyric_combine_music_iterator): rename to
9764 Old_lyric_combine_music_iterator
9766 * lily/*-engraver.cc (various): remove double use of
9767 PRECOMPUTED_VIRTUAL function: only use
9768 start_translation_timestep() and stop_translation_timestep(), not
9771 * lily/break-substitution.cc (fast_substitute_grob_array): do
9772 fast_substitute_grob_array for all unordered grob_arrays.
9773 (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9774 (substitute_grob_array): optimize.
9776 * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9778 * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9780 * lily/parser.yy: revert $globalheader patch.
9782 * lily/include/translator.icc
9783 (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9784 Translator methods, without _static helper.
9786 * lily/grob-smob.cc (derived_mark): rename from
9787 do_derived_mark(). Return void.
9789 * scm/define-context-properties.scm
9790 (all-internal-translation-properties): remove tweakCount/tweakRank.
9792 * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9793 predefined break-visibilities.
9795 * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9796 booleans for break-visibility.
9798 * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9800 * python/convertrules.py (conv): rule for Timing_translator.
9802 * lily/include/translator.icc: new file.
9804 * lily/paper-column-engraver.cc (process_music): new
9805 file. Separate Paper_column factory from Score_engraver.
9807 * lily/vertically-spaced-context-engraver.cc: administer
9808 spaceable-staves property of System.
9810 * lily/translator-group-ctors.cc: new file.
9812 * lily/context-property.cc (make_grob_from_properties): construct
9813 the right Grob class programmatically, looking at the class entry
9814 for the meta property.
9816 * lily/break-align-engraver.cc (stop_translation_timestep): call
9817 Break_align_interface::add_element() directly.
9819 * lily/context.cc (measure_position): measure_position() is now a
9822 * lily/include/translator.hh (class Translator): rename
9823 process_acknowledged_grobs() to process_acknowledged() and move to
9826 * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9827 field for each grob description.
9829 * lily/include/translator-group.hh (class Translator_group):
9830 change to base class. Separate class from Translator. This gets
9831 rid of virtual inheritance for Engravers/Performers.
9833 * lily/staff-performer.cc (class Staff_performer): derive
9834 Staff_performer from Performer, not Performer_group_performer
9836 * Lily/translator-group.cc (precomputed_recurse_over_translators):
9838 (precompute_method_bindings): new function. Precompute lists of
9839 Translators, so we only call methods (process_music,
9840 start_translation_timestep, etc.) for Translators needing
9841 it. Also: dispose of pointer-to-member-function calls.
9843 * lily/engraver-group-engraver.cc: remove engraver_each,
9844 recurse_down_engravers ()
9846 * lily/note-head.cc (internal_print): only call
9847 glyph-name-procedure if style != default.
9849 2005-07-16 Graham Percival <gperlist@shaw.ca>
9851 * ly/titling-init.ly: add printallheaders option.
9853 * Documentation/user/global.itely: document printallheaders.
9855 2005-07-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
9857 * lily/system.cc (do_derived_mark): don't mark from object_alist_
9858 anymore, but do it centrally.
9860 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9863 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9865 * scm/output-lib.scm: remove hammer-print-function.
9867 * lily/include/pointer-group-interface.hh (extract_grob_set): new
9868 macro. Declare a Link_array<Grob> and fill it from a grob.
9869 (extract_item_set): idem for item.
9871 * lily/break-substitution.cc: add header.
9872 (fast_substitute_grob_array): rewrite for Grob_arrays.
9873 (substitute_grob_array): idem.
9875 * lily/group-interface.cc (add_thing): remove file.
9877 * flower/include/parray.hh (class Link_array): slice() is const.
9879 * lily/include/grob-array.hh: new file.
9881 * lily/grob-array.cc (spanner): new file.
9883 * lily/beam-quanting.cc (fill): read details property from beam.
9885 * lily/beam.cc: support details property.
9887 * total speedups below: approx 10%.
9889 * lily/include/beam.hh: new struct, softcode beam quanting parameters
9891 * lily/include/grob.hh (class Grob): add interfaces_ member.
9893 * lily/bezier.cc (init_polynomial_cache): new function: cache
9894 binom(3,j) t^j (1-t)^{3-j}
9895 (curve_point): opps, actually use the cache for t^j , (1-t)^j!
9897 * lily/*.cc: substitution throughout.
9899 * lily/grob-property.cc (internal_get_object): new routine.
9900 (internal_set_object): idem. Store grob refrences in separate
9901 alist. This saves processing time, since properties aren't
9902 break-substituted, and the per grob namespace is smaller, both for
9903 grobs and non-grob properties.
9905 * scm/define-grob-properties.scm (all-internal-grob-properties):
9906 remove center-element.
9908 * lily/grob.cc: remove tweak-count, tweak-rank.
9910 2005-07-15 Graham Percival <gperlist@shaw.ca>
9912 * Documentation/user/lilypond-book.itely: fixes example.
9914 2005-07-15 Nicolas Sceaux <nicolas.sceaux@free.fr>
9916 * Documentation/user/global.itely (Creating titles):
9917 * Documentation/user/examples.itely (All headers): change the
9918 place of \header in \score blocks (after music block) to make
9919 examples compile (cf. changes on parser.yy on 2005-07-10)
9921 2005-07-13 Graham Percival <gperlist@shaw.ca>
9923 * python/convertrules.py: add exc -> ecc rule.
9925 * scripts/convert-ly.py: add location of convertrules.py
9928 * Documentation/user/changing-defaults.itely: fix language.
9930 2005-07-12 Jan Nieuwenhuizen <janneke@gnu.org>
9932 * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9934 2005-07-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
9936 * scm/output-socket.scm (grob-bbox): don't use inf?
9938 * flower/include/rational.hh: add operator bool()
9940 * scm/define-music-types.scm (music-descriptions): remove
9941 internal-class-name properties.
9943 * lily/include/event.hh: remove file.
9945 * lily/include/music-constructor.hh: remove file.
9947 * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9950 * lily/music.cc (duration_length_callback): new function.
9952 * lily/event.cc: remove file.
9954 * lily/music-constructor.cc: remove file.
9956 * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9958 * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9959 (get_context_key): idem.
9961 * scm/lily.scm (lambda): new option object-keys (default to #f)
9963 * scm/output-svg.scm (utf-8-string): rename from utf8-string.
9965 * scm/output-gnome.scm: remove beam routine.
9967 * scm/output-ps.scm (scm): idem.
9969 * scm/output-svg.scm: remove beam.
9971 * ps/music-drawing-routines.ps: remove draw_beam.
9973 * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9975 * flower/include/guile-compatibility.hh (scm_from_locale_string):
9976 add scm_from_locale_string compatibility glue.
9978 2005-07-13 Yoshinobu Ishizaki <isizaki@mte.biglobe.ne.jp>
9980 * scripts/lilypond-book.py: Prevent occuring error when
9981 'lilypond-book --output=foo/ somefile.ly' is executed multiple
9982 times and target file shoud be overwritten. (Error message said
9983 'input file and output file is same'.)
9985 2005-07-13 Graham Percival <gperlist@shaw.ca>
9987 * input/regression/slur-extreme.ly,
9988 input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9989 lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9990 mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9991 "excentricity" to "eccentricity".
9993 * Documentation/user/converters.itely: fix URL for Noteedit and
9996 * THANKS: added Yoshinobu Ishizaki.
9998 2005-07-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
10000 * scm/define-markup-commands.scm (justify-field): add.
10002 * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
10004 2005-07-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
10006 * lily/lookup.cc (filled_box): express filled_box with
10009 * scm/midi.scm (paper-book-write-midis): new function. Write all
10010 performances in numbered MIDI files.
10012 * lily/performance-scheme.cc (LY_DEFINE): new file.
10013 (LY_DEFINE): new function ly:performance-write.
10015 * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
10017 (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
10019 * scm/framework-*.scm: use port arguments throughout.
10021 * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
10023 * lily/paper-outputter.cc (Paper_outputter): take port argument.
10025 * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
10027 * scm/framework-texstr.scm (output-framework):
10029 * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
10031 * scm/output-lib.scm (tablature-stem-attachment-function):
10032 tablature stem attachment fix.
10034 2005-07-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
10036 * lily/bezier.cc: hardcode binomial coefficients of order 3.
10038 * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
10040 * scm/define-music-types.scm (music-descriptions): don't use
10041 Music_wrapper type.
10043 * lily/paper-column.cc (print): print moment too.
10045 * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.
10046 remove compatibility cruft.
10048 * lily/parser.yy (score_body): \score can only begin with Music.
10050 * lily/score-scheme.cc (LY_DEFINE): rename scorify to
10051 make-score. Take music argument only. Move parser interaction to
10054 * scm/lily-library.scm (scorify-music): new function.
10056 * python/lilylib.py (datadir): remove 2.1 compat kludge.
10057 (datadir): remove resource import.
10058 (print_environment): remove get_bbox()
10059 (cp_to_dir): remove pre 1.5.2 compat glue.
10061 2005-07-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
10063 * lily/include/simple-spacer.hh (Module): idem.
10065 * lily/include/spring.hh (struct Spring): store inverse
10066 strength. This prevents division by zero.
10068 * VERSION: release 2.7.0
10070 * lily/include/music.hh (class Music): remove Music::duration_log()
10072 * lily/stem-engraver.cc (make_stem): take duration log from event.
10074 * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
10076 2005-07-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
10078 * scm/lily.scm (ly:load): load autochange.scm
10080 * Documentation/user/tutorial.itely (Running LilyPond for the
10081 first time): remove reference to DVI/TeX
10083 * scm/define-markup-commands.scm (text): add \text markup command.
10085 * configure.in (reloc_b): bump requirement to Python 2.2.
10087 * lily/include/dots.hh (class Dots): make has_interface() static.
10089 * python/convertrules.py (conv): add rule for ly:grob-default-font
10091 * scm/define-grobs.scm (all-grob-descriptions): reorganize in
10092 alphabetical order.
10094 * input/regression/trill-spanner-pitched.ly: new file.
10096 * lily/font-interface-scheme.cc (LY_DEFINE): function
10097 ly:grob-default-font (changed from get-default-font).
10099 * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
10101 * lily/note-head.cc (internal_print): if style is not a symbol,
10102 set style to 'default.
10103 (internal_print): no style suffix if glyph-name-procedure not
10104 set. Default to quarter head.
10106 * scm/define-grobs.scm (Module): new grob TrillPitchHead.
10108 * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
10110 * ly/music-functions-init.ly: \pitchedTrill
10112 * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
10114 * ly/Welcome_to_LilyPond.ly: update to 2.6.0
10116 * lily/trill-spanner-engraver.cc (finalize): rename req -> event
10118 * scm/define-markup-commands.scm (pad-markup): pad-markup command.
10122 * po/de.po: update.
10124 2005-07-06 Graham Percival <gperlist@shaw.ca>
10126 * Documentation/user/changing-defaults.itely: add link
10129 * Documentation/user/advanced-notation.itely: add material
10130 to Setting automatic beam behaviour. Thanks, Joe!
10132 * Documentation/user/lilypond.itely: change encoding to utf-8.
10134 2005-07-01 Mats Bengtsson <mabe@s3.kth.se>
10136 * Documentation/user/advanced-notation.itely (Setting automatic
10137 beam behavior): Correct the documentation of
10138 revert-auto-beam-setting (backportme)
10140 2005-07-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
10142 * lily/ly-module.cc (ly_make_anonymous_module): define
10143 %module-public-interface of module.
10145 * lily/lily-parser.cc (print_smob): allow printing of parser smob
10148 2005-07-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
10150 * input/regression/fret-diagrams.ly: stretch example.
10152 2005-06-30 Jan Nieuwenhuizen <janneke@gnu.org>
10154 * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
10157 2005-06-30 Graham Percival <gperlist@shaw.ca>
10159 * Documentation/topdocs/AUTHORS.texi: update personal web address.
10161 * Documentation/user/examples.itely, lilypond-book.itely:
10162 change \RequirePackage to \usepackage.
10164 * Documentation/user/global.itely: document copyright and tagline.
10166 2005-06-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
10168 * Documentation/user/basic-notation.itely (Transpose): remove link
10169 to nonexistent UntransposableMusic.
10171 * scm/output-svg.scm: remove old definitions.
10173 * scripts/lilypond-book.py (do_file): search for kpsewhich before
10176 * python/lilylib.py (search_exe_path): new function.
10178 2005-06-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
10180 * python/lilylib.py (mkdir_p): remove setup_environment()
10183 * buildscripts/mutopia-index.py (headertext): trim text.
10185 * Documentation/topdocs/NEWS.tely (Top): refresh.
10187 * scm/define-markup-commands.scm (wordwrap-string): new function:
10188 split string in paras and words.
10189 (wordwrap-markups): new function.
10190 (wordwrap-stencils): new function.
10192 (wordwrap): use it.
10193 (wordwrap-string): use it
10194 (justify-string): use it.
10196 * scm/lily-library.scm (regexp-split): new function.
10198 * scm/define-markup-commands.scm: remove encoded-simple.
10199 remove font-markup.
10200 (fontsize): remove old version of fontsize.
10201 (wordwrap): new markup function. Wrap into paragraphs.
10203 * VERSION: Branch lilypond_2_6
10204 (MINOR_VERSION): go to 2.7.0
10206 2005-06-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
10208 * po/zh_TW.po: update from translation project.
10210 2005-06-28 Graham Percival <gperlist@shaw.ca>
10212 * scm/midi.scm: compile fix.
10214 2005-06-28 Mats Bengtsson <mabe@s3.kth.se>
10216 * scripts/lilypond-book.py : Fix embarrassing bug in my previous
10217 patch. Now, the tempfile module is loaded too, not only used.
10219 2005-06-28 Stephen Charles McCarthy <stecmccarthy@hotpop.com>
10221 * scm/midi.scm: changed midi volumes in absolute-volume-alist from
10222 0.05 - 1.00 to 0.25 - 1.00
10224 * scm/midi.scm: moved the default-instrument-equalizer procedure
10225 to just under the insturment-equalizer-alist it takes as an
10228 2005-06-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
10230 * Documentation/user/advanced-notation.itely (Font selection):
10233 * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn
10235 2005-06-28 Jan Nieuwenhuizen <janneke@gnu.org>
10237 * THANKS: Add UTF-8 marker.
10239 * Documentation/user/point-and-click.itely (http): Update: use
10240 lilypond-invoke-editor. Fix: instruct to use user.js.
10242 2005-06-27 Graham Percival <gperlist@shaw.ca>
10244 * ly/titling-init.ly: implements printpagenumber, increases
10245 space between dedication and title (to avoid collisions with
10246 "g" and "q" in dedication), and nicer logic about copyright
10247 and instrument fields being printed on the first page.
10250 * Documentation/user/global.itely: document printpagenumber.
10252 2005-06-27 Jan Nieuwenhuizen <janneke@gnu.org>
10254 * Documentation/topdocs/NEWS.tely: Update to 2.6.
10256 2005-06-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
10258 * THANKS: update to 2.6
10260 * VERSION: 2.6.0 released.
10262 2005-06-27 Jan Nieuwenhuizen <janneke@gnu.org>
10264 * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
10265 rule, errorneously removed probably because of misleading comment.
10267 2005-06-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
10269 * python/lilylib.py (datadir): py2exe comments.
10271 * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
10273 * configure.in (reloc_b): make fontconfig REQUIRED.
10275 2005-06-27 Heikki Junes <hjunes@cc.hut.fi>
10277 * po/fi.po: add latest translations.
10279 2005-06-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
10281 * ChangeLog: recode utf-8
10283 * Documentation/pictures/lilypond.xpm (Module): edited photo as
10286 * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
10288 * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r.
10290 * python/convertrules.py (do_conversion): don't print program_name
10291 from within a module
10293 * configure.in (reloc_b): bump fontforge requirement to 20050624.
10295 * python/convertrules.py (conv): add 2.6.0 dummy rule.
10297 2005-06-23 Graham Percival <gperlist@shaw.ca>
10299 * Documentation/user/lilypond-book.itely,
10300 Documentation/user/examples.itely: add \RequirePackage{graphics}.
10302 * ly/titling.ly: checks printfirstpagenumber, adds meter, and
10303 fixes baseline-skip. Thanks Vincent!
10305 * Documentation/user/advanced-notation.itely, global.itely:
10306 moved "Selecting font sizes" to global, since it deals with
10307 notation font size, not text fonts.
10309 2005-06-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
10311 * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
10314 2005-06-23 Mats Bengtsson <mabe@s3.kth.se>
10316 * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
10317 workaround since /dev/stdin doesn't work on Cygwin. Using a
10318 temporary file in the current directory since latex doesn't
10319 understand the path name to the default TMP in Cygwin (at least on
10322 * Documentation/user/global.itely (Creating titles): Correct
10323 misprint in example. Thanks to Rob Vlasaty.
10325 2005-06-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
10327 * VERSION (PATCH_LEVEL): release 2.5.32
10329 * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
10330 variable in lily module
10332 * scm/framework-ps.scm (output-classic-framework): error message
10333 regarding the classic framework.
10335 * Documentation/user/henle-flat-gray.png (Module): new file.
10337 * Documentation/user/baer-flat-gray.png (Module): new file.
10339 * scm/output-lib.scm (fret-number-tablature-format): vcenter and
10340 whiteout for markups.
10342 * buildscripts/substitute-encoding.py (note_glyph): include _ in
10343 regex too. This fixes change clef appearance in PDF.
10345 * ttftool/include/*: remove.
10347 * configure.in (reloc_b): remove TTFTOOL_ENDIAN
10349 * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
10351 * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
10353 * ttftool/*: remove ttftool subdirectory.
10355 * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
10357 * lily/ttf.cc (print_header): new file. Convert to type42, using
10358 FreeType to parse the TTF.
10360 * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
10361 and post table may differ. Pass around post_nglyphs as well.
10363 2005-06-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
10365 * ly/music-functions-init.ly (musicMap): new music function
10368 2005-06-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
10370 * make/mutopia-rules.make: anti-alias-factor = 2
10372 * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
10375 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
10376 anti-alias-factor for lilypond-book runs.
10378 * scm/ps-to-png.scm (scale-down-image): new function.
10379 (my-system): new function.
10380 (make-ps-images): blow up GS resolution by anti-alias-factor,
10381 scale down image by anti-alias-factor. This improves appearance
10383 (make-ps-images): remove showpage. Fixes spurious empty png at
10386 * scm/framework-ps.scm (write-preamble): downcase filename before
10387 string-matching. Should fix .TTF files (as opposed to ttf files)
10389 * Documentation/user/tutorial.itely (Running LilyPond for the
10390 first time): separate subsections for windows, macos and unix.
10392 * Documentation/user/invoking.itely (Updating files with
10393 convert-ly): add MacOS X note.
10395 2005-06-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
10397 * Documentation/user/introduction.itely (Engraving): don't include
10398 file optical-spacing, add directly.
10400 * lily/paper-outputter.cc (file): open file in binary mode. This
10401 fixes OTF embedding on windows.
10403 2005-06-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
10405 * scm/framework-ps.scm (write-preamble): remove debugging output.
10407 * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
10409 * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
10411 (install-fc-cache): install font cache in installation directories.
10413 2005-06-17 Jan Nieuwenhuizen <janneke@gnu.org>
10415 * scm/editor.scm (editor-command-template-alist): Use char iso
10416 column, except for Emacs.
10417 (get-editor-command): Substitute char too (Bertalan Fodor).
10419 2005-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
10421 * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
10422 quoted ~s. This should fix PNG output on Windows; single quotes
10423 are regular characters on Windows.
10425 2005-06-16 Graham Percival <gperlist@shaw.ca>
10427 * Documentation/user/basic-notation.itely: include ChoirStaff
10428 in System start delimiters.
10430 * Documentation/user/putting.itely: new doc section on
10431 fixing overlapping notation.
10433 2005-06-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
10435 * Documentation/user/global.itely (Paper size): \paper is in
10438 * make/mutopia-rules.make: -ddelete-intermediate-files
10440 * ly/engraver-init.ly: make Staff default child of ChoirStaff.
10442 2005-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
10444 * ChangeLog: Recode utf-8.
10446 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
10447 datadir with .py modules.
10449 2005-06-15 Heikki Junes <hjunes@cc.hut.fi>
10451 * Documentation/user/basic-notation.itely (Ties): add tieDashed.
10453 2005-06-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
10455 * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
10457 * scm/framework-ps.scm (write-preamble): remove status check.
10459 * Documentation/user/invoking.itely (Updating files with
10460 convert-ly): remove -o option.
10462 * VERSION (PACKAGE_NAME): release 2.5.31
10464 * scm/framework-ps.scm (write-preamble): use ly:system.
10465 (write-preamble): verbosity.
10467 * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
10469 * python/convertrules.py: new file. Store conversion rules
10472 2005-06-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
10474 * scm/backend-library.scm (postprocess-output): remove debugging gobs.
10476 2005-06-14 Mats Bengtsson <mabe@s3.kth.se>
10478 * Documentation/topdocs/NEWS.tely (Top): Corrected name of
10481 * Documentation/user/instrument-notation.itely (More stanzas): Add
10482 reference to StanzaNumber.
10484 2005-06-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
10486 * THANKS: separate section for website translators.
10488 2005-06-14 Graham Percival <gperlist@shaw.ca>
10490 * Documentation/topdocs/INSTALL.texi: update vim info;
10491 thanks Simon Bailey!
10493 * Documentation/user/advanced-notation.itely: included
10496 * Documentation/user/advanced-notation.itely,
10497 Documentation/usr/notation-appendices.itely: moved
10498 color names into an appendix.
10500 2005-06-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
10502 * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
10504 * scm/lily.scm (lambda): initialize program options from here.
10506 * scm/framework-*.scm: add header info.
10508 * lily/main.cc (parse_argv): only set output format to pdf if no
10509 other format specified.
10511 * scm/backend-library.scm (postprocess-output): process
10512 'delete-intermediate-files after running convert-to-*. This fixes
10513 PNG generation when 'delete-intermediate-files is set.
10515 2005-06-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
10517 * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
10520 2005-06-13 Graham Percival <gperlist@shaw.ca>
10522 * Documentation/topdocs/INSTALL.texi,
10523 Documentation/user/lilypond-book.itely: typos.
10525 2005-06-12 Pal Benko <benkop@freestart.hu>
10527 * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
10528 added between program name and switch; -b changed to -f not
10531 2005-06-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
10533 * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
10534 (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
10536 * input/sakura-sakura.ly: add \midi.
10538 * buildscripts/mutopia-index.py (find): use /usr/bin/find
10541 * ttftool/test.c (main): cosmetics.
10543 * ttftool/util.c (surely_lseek): use stdio FILE's for I/O
10545 * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
10546 create a ttf2ps binary.
10548 * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
10550 * scm/backend-library.scm (postscript->png): set rename-page-1 to
10553 2005-06-11 Graham Percival <gperlist@shaw.ca>
10555 * Documentation/user/lilypond-book.itely: add warning about
10556 the font warnings in dvips.
10558 2005-06-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
10562 * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
10564 * GNUmakefile.in: remove links for .map, .enc
10565 don't fail if out/ doesn't exist yet.
10567 2005-06-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
10569 * ttftool/util.c (surely_read): return nbytes
10571 * stepmake/bin/text2html.py (txt2html): add utf-8 marker.
10573 * VERSION (PACKAGE_NAME): release 2.5.30
10575 * flower/string-convert.cc (precision_string): >? fix.
10577 * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
10578 (make-ps-images): add verbose -q too.
10580 * lily/default-actions.cc (Module): new file. default
10581 {book,score}-print functions.
10583 * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
10584 pass results via parseStringResult, lookup via ly:parser-lookup.
10586 * lily/lily-parser.cc (Lily_parser): only clone lexer in
10588 (parse_file): encapsulate do_yyparse() in scm_set_current_module()
10589 (parse_string): idem.
10591 * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
10593 * lily/main.cc (main_with_guile): copy be_verbose_global into
10596 2005-06-10 Jan Nieuwenhuizen <janneke@gnu.org>
10598 * scm/backend-library.scm (postscript->pdf):
10599 * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
10600 verbose mode. Search for several names of gs executable.
10602 2005-06-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
10604 * lily/ly-module.cc (ly_make_anonymous_module): call make-module
10605 directly. This fixes a massive memory leak, provided you use CVS
10608 2005-06-10 Erik Sandberg <ersa9195@student.uu.se>
10610 * ly/property-init.ly: Added tieDashed.
10612 * THANKS: Added some bughunters for 2.5.
10614 2005-06-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
10616 * lily/program-option.cc: add debug-gc option.
10618 * lily/include/lily-guile-macros.hh: don't protect exported module
10621 * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
10623 * scm/backend-library.scm (postscript->pdf): use
10624 delete-intermediate-files iso. running-from-gui?
10626 * ttftool/util.c (surely_read): robustness. Allow read() to return
10627 less bytes than requested, as per posix standards.
10629 * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
10632 * ttftool/include/ttftool.h ("C"): rename verbosity to
10633 ttf_verbosity. Add to public interface.
10635 * scm/music-functions.scm (unfold-repeats): remove debugging display.
10637 * lily/program-option.cc: rename from scm-option.cc
10639 * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
10640 (get_help_string): Print pretty help string.
10642 * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10643 to snippet preamble.
10645 * lily/scm-option.cc: remove command-line-settings option. Fold
10646 all command-line options plus default settings in a generic
10649 * flower/getopt-long.cc (table_string): indent 2nd lines of help
10652 2005-06-09 Jan Nieuwenhuizen <janneke@gnu.org>
10654 * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10655 or EXT_ components non-empty.
10657 2005-06-08 Jan Nieuwenhuizen <janneke@gnu.org>
10659 * scm/lily.scm (running-from-gui?): Export.
10661 * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10662 output in .ly source directory.
10664 2005-06-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
10666 * ttftool/util.c (surely_lseek): more verbosity.
10668 * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10671 * lily/parser.yy (Repeated_music): remove >?
10673 * scm/backend-library.scm (postscript->pdf): Support for
10676 * scm/framework-ps.scm (write-preamble): make font loading
10677 switchable to GS via --define-default gs-font-load=1
10679 2005-06-09 Graham Percival <gperlist@shaw.ca>
10681 * Documentation/user/global.itely: added \layout docs.
10683 2005-06-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
10685 * lily/lily-parser-scheme.cc: add unistd.h
10687 2005-06-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
10689 * scm/editor.scm: add char argument.
10691 * scripts/lilypond-invoke-editor.scm (dissect-uri): add char.
10693 * ttftool/util.c (syserror): use errno for better error reporting.
10695 * lily/source-file.cc (get_counts): new function. Calc column,
10696 line and char count in one go.
10698 * lily/binary-source-file.cc (quote_input): rename to quote_input
10700 * lily/input.cc (set): new function.
10702 2005-06-08 Jan Nieuwenhuizen <janneke@gnu.org>
10704 * flower/file-path.cc (find): Bugfix. Append rather than prepend
10705 directory part of file name to search directory.
10707 * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10708 search path and chdir to DIR if --outname=DIR used.
10710 * lily/main.cc (prepend_env_path): Bugfix: Check directory
10711 existence before appending original path.
10713 2005-06-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
10715 * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10718 * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10719 texinfo.tex is always used.
10721 2005-06-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
10723 * flower/include/axis.hh: rename from axes.hh
10725 * lily/include/text-interface.hh (Module): rename from text-item.hh
10727 * VERSION (PATCH_LEVEL): release 2.5.29
10729 * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10731 * scm/framework-ps.scm (font-file-as-ps-string): new function.
10732 (handle-macfont): new function. Call fondu for Native mac fonts.
10734 * scm/define-markup-commands.scm (fill-line): handle text-widths =
10737 2005-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
10739 * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10740 multi-page. Fix .eps regular expression.
10742 2005-06-07 Graham Percival <gperlist@shaw.ca>
10744 * Documentation/user/putting.itely: add info on modifying templates.
10746 * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10747 misc small changes.
10749 2005-06-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
10751 * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10753 * scripts/lilypond-ps2png.scm
10755 * VERSION (PACKAGE_NAME): release 2.5.28
10757 2005-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
10759 * lily/main.cc (prepend_env_path): Do not append /, that does not
10760 work. Localedir lives in datadir, not in prefix.
10762 * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10765 * flower/include/file-cookie.hh: Compile fix.
10767 2005-06-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
10769 * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup.
10771 * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10773 (gulp-port): using read-string!/partial. We don't want to read an
10774 entire PS file (GUILE 1.6 limits strings to 16M)
10776 * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10777 properties. Add font-interface.
10779 * scm/define-grob-properties.scm (all-user-grob-properties):
10780 remove old bracket properties.
10782 * scm/x11-color.scm: reformat.
10784 * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10785 LedgerLineSpanner if new StaffSymbol is found.
10787 * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10788 staff-symbol for finishing staff.
10790 * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10792 * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10793 change black to currentColor everywhere. This fixes color support
10796 2005-06-06 Carl Sorensen <carldsorensen@comcast.net>
10798 * input/regression/fret-diagrams.ly: new file to test fret diagram
10801 * scm/output-tex.scm: remove white-dot and white-text
10803 * scm/output-ps.scm: remove white-dot and white-text
10805 * scm/fret-diagrams.scm (sans-serif-stencil-white): removed --
10806 using ly:stencil-in-color instead
10807 (draw-dots) : remove call to white-dot
10809 2005-06-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
10811 * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10814 * ttftool/ttfps.c: use lily_cookie functions everywhere.
10816 * flower/include/file-cookie.hh: new file. lily_cookie extension
10818 * flower/file-cookie.cc: new file. lily_cookie extension.
10820 2005-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
10822 * scm/editor.scm (editor-command-template-alist): Add syn
10823 editor (Jaap [de Vos]).
10825 2005-06-05 Jan Nieuwenhuizen <janneke@gnu.org>
10827 * scripts/lilypond-ps2png.scm:
10828 * scm/ps-to-png.scm: New file.
10830 * scm/backend-library.scm (postscript->png): Use it.
10832 * scripts/lilypond-ps-to-png.py: Remove file.
10834 * python/lilylib.py (get_bbox, make_ps_images): Remove.
10836 2005-06-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
10838 * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10840 * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10841 start on grace moment. Fixes autobeam-grace.ly.
10843 * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10844 process anything unless we're at the end of a pending beam. Fixes
10845 syncopated 8ths beamed across a beat.
10847 2005-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
10849 * scm/editor.scm (editor-command-template-alist): Start emacs if
10852 * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10854 * flower/file-path.cc (is_file, is_dir): Export.
10856 * lily/main.cc (prepend_env_path, set_env_file): Use them.
10858 2005-06-02 Mats Bengtsson <mabe@s3.kth.se>
10860 * lily/easy-notation.cc: Added include cctype to correct
10863 2005-06-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
10865 * scm/backend-library.scm (postscript->pdf): set resolution to
10866 1200, so bitmap fonts aren't that ugly.
10868 * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10870 * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10871 parent if we have a notehead. Fixes incorrect offsets when
10872 Paper_column is very wide in the X direction.
10874 * input/regression/font-family-override.ly (Module): new file.
10876 * scm/font.scm (make-pango-font-tree): new function.
10878 * lily/beam.cc (before_line_breaking): remove warning about less
10879 than 2 visible stems. We still get a warning when there is only
10882 2005-06-01 Werner Lemberg <wl@gnu.org>
10884 * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10887 2005-06-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
10889 * lily/slur-scoring.cc (generate_avoid_offsets): new
10890 function. Generate avoid offsets once per slur.
10892 * lily/slur.cc (add_extra_encompass): add dependency to
10893 extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10895 * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10896 too. Fixes inf error with added bass notes.
10898 * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10901 * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10903 * input/tutorial/lbook-latex-test.tex: add line length test.
10905 * scripts/lilypond-book.py (set_default_options): new
10906 function. Call this before dissecting snippets, so linewidth
10907 settings reach the snippets.
10909 2005-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
10911 * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10913 2005-06-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
10915 * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10917 2005-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
10919 * stepmake/aclocal.m4: More autopackage friendliness.
10921 2005-05-31 Graham Percival <gperlist@shaw.ca>
10923 * Documentation/index.html.in: remove link to LSR.
10925 * Documentation/user/global.itely: remove duplicate
10926 "dedication" \header{} section.
10928 2005-05-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
10930 * VERSION (PACKAGE_NAME): release 2.5.27.
10932 * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10933 too. Plugs memory leak.
10935 * make/lilypond.fedora.spec.in (Group): remove
10936 lilypond-pdfpc-helper.
10938 * scripts/GNUmakefile (SEXECUTABLES): remove
10939 lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10941 * scm/font.scm (make-century-schoolbook-tree): add Mono as
10942 'typewriter family.
10944 * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10947 * lily/parser.yy (score_body): don't clone Score, that's done in
10948 Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10950 * lily/score-engraver.cc (derived_mark): new function.
10951 (initialize): unprotect Paper_score. This fixes a memory leak.
10953 * lily/score-performer.cc (derived_mark): new function.
10955 * lily/score-translator.cc (get_output): use SCM for get_output() call.
10957 * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10960 * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10963 2005-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
10965 * configure.in (reloc_b): Add --enable-relocation.
10967 2005-05-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
10969 * lily/pfb.cc (LY_DEFINE): show file name when loading PFB.
10971 * input/regression/alignment-order.ly: add Staff example.
10973 2005-05-31 John Mandereau <john.mandereau@free.fr>
10975 * po/fr.po: update.
10977 2005-05-31 Graham Percival <gperlist@shaw.ca>
10979 * Documentation/index.html.in: add link to LSR.
10981 2005-05-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
10983 * scm/define-stencil-commands.scm (Module): new file. Register all
10984 allowed stencil expression heads in a central place.
10986 * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10989 * lily/stencil-expression.cc (all_stencil_heads): registering
10990 stencil expressions.
10992 * lily/stencil-interpret.cc: new file. Stencil expression
10995 * input/xiao-haizi-guai-guai.ly: move file back.
10997 2005-05-30 Graham Percival <gperlist@shaw.ca>
10999 * Documentation/user/advanced.itely, converters.itely,
11000 instrument-notation.itely, lilypond-book.itely: misc small
11003 2005-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
11005 * lily/lexer.ll: Skip UTF-8 BOM at BOF.
11007 * make/lilypond.fedora.spec.in: Fix source url.
11009 * cygwin: Update from mingw patches.
11011 * scm/editor.scm (editor-command-template-alist): Use jedit
11012 -reuseview (Bertalan), add uedit (Patrick Huberts).
11014 * input/xiao-hai-zi-guai-guai.ly: Rename from
11015 xiao-haizi-guai-guai.ly.
11017 * input/*: Reindent, do not use TAB.
11019 * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
11022 2005-05-29 Jan Nieuwenhuizen <janneke@gnu.org>
11024 * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
11025 numerical overflow error.
11027 2005-05-29 Laura Conrad <lconrad@laymusic.org>
11029 * abc2ly.py: fix to syntax error in multi-part output.
11031 2005-05-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
11033 * lily/span-bar.cc (print): sort bar line extents. Fixes problem
11034 with disappearing span bars when alignAboveContext is active
11036 * lily/property-iterator.cc (check_grob): use is-grob?
11037 object-property. Fixes crash-key-sig-font-size.ly.
11039 2005-05-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
11041 * lily/bar-line.cc (print): don't round barlines; this produces
11042 odd aliasing effects in Acroread.
11044 * lily/timing-engraver.cc (process_music): robustness fix.
11046 * lily/context-def.cc (filter_engravers): bugfix.
11048 2005-05-28 Jan Nieuwenhuizen <janneke@gnu.org>
11050 * lily/lilypond.rc.in: Add ly-icon.
11052 * lily/GNUmakefile:
11053 * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
11056 2005-05-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
11058 * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
11060 * ps/music-drawing-routines.ps:
11062 * scm/output-ps.scm: remove draw ez_ball.
11064 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
11065 EasyNotation context definition.
11067 * lily/easy-notation.cc (brew_ez_stencil): new file. Use
11068 Text_interface and color for making easy note heads.
11070 * lily/stencil.cc (with_color): new function.
11072 * ps/music-drawing-routines.ps: remove draw_zigzag_line
11074 * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
11075 output routine. Zigzag now works in SVG too.
11077 * scm/output-tex.scm (filledbox): idem.
11079 * scm/output-svg.scm (filledbox): idem.
11081 * scm/output-ps.scm (lily-def): remove horizontal-line.
11083 * lily/lookup.cc (horizontal_line): use draw-line.
11085 * lily/system-start-delimiter.cc: remove old staff bracket code.
11087 * mf/feta-haak.mf: further tweaks.
11089 * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
11091 * mf/feta-generic.mf: include feta-haak.
11093 * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips
11095 * scm/framework-ps.scm (write-preamble): only load fonts if their
11096 filename is a string.
11098 2005-05-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
11100 * scm/output-svg.scm (circle): support circle.
11101 (bracket): stub for bracket.
11103 * scripts/lilypond-book.py (main): make sure --psfonts warning is
11106 2005-05-26 Graham Percival <gperlist@shaw.ca>
11108 * Documentation/user/lilypond.tely, advanced-notation.itely,
11109 basic-notation.itely, instrument-notation.itely, global.itely,
11110 introduction.itely, tutorial.itely: rearranging, editing,
11113 * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
11114 for compiling on FreeBSD.
11116 2005-05-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
11118 * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
11121 * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
11124 * VERSION: 2.5.26 released.
11126 * scm/titling.scm (marked-up-headfoot): revert Pedro's patch.
11128 2005-05-25 Pedro Kroger <kroeger@pedrokroeger.net>
11130 * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
11131 if printpagenumber is false.
11133 2005-05-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
11135 * lily/font-config.cc (init_fontconfig): comment out FontConfig
11138 * lily/tie.cc (print): support dotted ties.
11140 2005-05-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
11142 * scm/define-grobs.scm (all-grob-descriptions): switch off
11144 (all-grob-descriptions): Arpeggio has Y-extent.
11146 * scm/define-music-properties.scm (all-music-properties): document
11147 length-callback and start-callback as "read-only".
11149 * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
11150 length-callback after creation.
11152 * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
11153 compressmusic -> compressMusic.
11155 * ly/music-functions-init.ly (oldaddlyrics): idem.
11157 * lily/parser.yy: NewLyricCombineMusic ->
11158 LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
11160 2005-05-24 Pedro Kroger <kroeger@pedrokroeger.net>
11162 * ly/Welcome_to_LilyPond.ly: typo.
11164 2005-05-24 Graham Percival <gperlist@shaw.ca>
11166 * Documentation/user/lilypond.tely: move changing-defaults to be
11167 before global issues.
11169 * Documentation/user/basic-notation.itely: move Transpose section
11170 here from advanced/Other.
11172 * Documentation/user/changing-defaults.itely,
11173 advanced-notation.itely: move Fonts to advanced, edit.
11175 2005-05-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
11177 * lily/parser.yy (bare_int): remove rule. From now on, we require
11178 # before negative integers.
11180 2005-05-23 Graham Percival <gperlist@shaw.ca>
11182 * ly/property.ly: Update tieDotted to have the same form as slurDotted.
11184 * Documentation/user/lilypond.tely: change Unified index to
11187 * Documentation/user/advanced-notation.itely,
11188 instrument-notation.itely: editing.
11190 2005-05-23 Jan Nieuwenhuizen <janneke@gnu.org>
11192 * scm/lily.scm (lilypond-all): Bugfix: return failed.
11194 * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
11196 2005-05-21 Jan Nieuwenhuizen <janneke@gnu.org>
11198 * lily/general-scheme.cc (ly:stderr-redirect): Rename from
11199 ly:port-move. Needs to be stderr-specific on mingw.
11202 2005-05-20 Jan Nieuwenhuizen <janneke@gnu.org>
11204 * lily/general-scheme.cc (ly:port-move): Remove.
11206 * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
11209 * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
11210 variables. This eliminates the need for a gs.bat wrapper, which
11213 * scripts/lilypond-invoke-editor.scm (running-from-gui?):
11214 * scm/lily.scm (running-from-gui?):
11215 * lily/main.cc[MINGW]: Remove isatty inversion, this is an
11216 artifact of not compiling with -mwindows.
11218 * scm/editor.scm: Define PLATFORM.
11220 2005-05-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
11222 * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
11223 can start to cut & paste lilypond-book fragments.
11225 * scm/define-music-types.scm (music-descriptions): remove
11226 UntransposableMusic
11228 2005-05-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
11230 * scm/output-ps.scm (glyph-string): remove / before CIDs.
11232 2005-05-20 Graham Percival <gperlist@shaw.ca>
11234 * Documentation/user/instrument-notation.itely: remove *Engraver.
11236 * Documentation/user/advanced-notation.itely: edit, rearrange.
11238 2005-05-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
11240 * scm/output-ps.scm (glyph-string): take cid? argument. Use
11241 findresource iso. findfont for CID CFF fonts.
11243 * VERSION (PACKAGE_NAME): release 2.5.25
11245 * ly/Welcome_to_LilyPond.ly: add \version
11247 2005-05-20 Graham Percival <gperlist@shaw.ca>
11249 * Documentation/user/programming-interface.itely: move
11250 \displayMusic into its own section.
11252 * Documentation/user/basic-notation.itely: finish editing.
11254 2005-05-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
11256 * flower/file-path.cc (find): don't throw away file_name.dir, but
11257 append to it. Fixes \include with directories.
11259 * flower/include/file-path.hh (class File_path): don't derive from
11262 * flower/include/file-name.hh (class File_name): remove to_str0()
11264 * lily/hara-kiri-engraver.cc (acknowledge_grob): split
11265 Hara_kiri_engraver in separate file.
11267 * lily/slur-configuration.cc (score_encompass): oops, <? to min()
11268 translation went wrong. Fixes vertically translated slurs.
11270 2005-05-19 Graham Percival <gperlist@shaw.ca>
11272 * Documentation/user/basic-notaton.itely: editing.
11274 2005-05-18 Graham Percival <gperlist@shaw.ca>
11276 * Documentation/user/macros.itexi, basic-notation.itely:
11277 add @commonprop (commonly used properties) macro.
11279 2005-05-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
11281 * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
11283 * scripts/lilypond-book.py (invokes_lilypond): new function
11284 (main): only run fontextract if invokes_lilypond() is true.
11286 * lily/function-documentation.cc (ly_add_function_documentation):
11289 * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
11291 * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
11293 * scm/lily.scm (running-from-gui?): lowercase Darwin.
11295 * lily/function-documentation.cc (ly_add_function_documentation):
11296 use scm_hash_table_p() for checking.
11298 2005-05-18 Jan Nieuwenhuizen <janneke@gnu.org>
11300 * Documentation/user/advanced-notation.itely (Text scripts):
11301 Change nonexisting @internalsref{Text markup} to @ref{Text
11302 markup}. Change @internalsref{Text script} to
11303 @internalsref{TextScript}.
11305 * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
11307 2005-05-17 Graham Percival <gperlist@shaw.ca>
11309 * Documentation/user/tutorial.itely, basic-notation.itely,
11310 changing-defaults.itely: remove duplicate cindex entries
11311 that appear on the same page.
11313 * scm/define-grobs.scm: change default padding for TextSpanner.
11315 * Documentation/topdocs/AUTHORS.texi: update email address.
11317 * Documentation/user/global.itely: add info about \include.
11319 2005-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
11321 * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
11322 when running-from-gui.
11324 * scm/editor.scm (get-editor): Add platform defaults.
11326 * scm/backend-library.scm (postscript->pdf): Typo.
11328 2005-05-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
11330 * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
11332 * lily/font-config.cc (init_fontconfig): add warning about cache.
11334 2005-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
11336 * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
11338 2005-05-16 Mats Bengtsson <mabe@s3.kth.se>
11340 * lily/horizontal-bracket.cc (print): Take care of the direction
11341 property so brackets above the stave point downwards.
11343 * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
11344 for HorizontalBracket so it doesn't end up within the stave.
11346 2005-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
11348 * lily/GNUmakefile (default): Typo.
11350 * scm/lily.scm (PLATFORM): Export.
11352 * scm/framework-ps.scm (write-preamble)[MINGW]: Use
11353 load-font-via-GS, ttftool or fopencookie is broken on windows.
11355 * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
11356 -dSAFER, that is broken on windows.
11358 2005-05-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
11360 * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
11363 * scripts/lilypond-invoke-editor.scm: remove stray -
11365 2005-05-15 Jan Nieuwenhuizen <janneke@gnu.org>
11367 * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
11368 Fixes deprecation warning.
11370 * flower/include/string.icc (to_string): Only inline if
11371 -DSTRING_UTILS_INLINED.
11373 * lily/pango-font.cc (pango_item_string_stencil): Normalize file
11374 name. Remove windows comment.
11376 * scm/editor.scm (slashify): New function.
11377 (get-editor-command): Use it.
11378 (get-command-template): Do not alter editor command if
11379 environment value includes `%(file)s' magic.
11381 * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
11382 (dissect-uri): Use it.
11383 (unquote-uri): Bugfix.
11385 2005-05-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
11387 * scm/framework-ps.scm (write-preamble): add TTF rule.
11389 * Documentation/topdocs/README.texi (Top): remove note about
11392 * Documentation/topdocs/INSTALL.texi (Top): remove Flex
11395 * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
11396 function. Figure out where FlexLexer.h lives
11398 * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
11400 2005-05-14 Jan Nieuwenhuizen <janneke@gnu.org>
11402 * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
11403 with Windows root in file name.
11405 * scm/backend-library.scm (ly:system): Only redirect output (using
11406 system and shell, ugh) if /dev/null is writable.
11408 * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
11411 * scm/lily.scm (is-absolute?): New function. Fixes absolute files
11414 * scm/output-ps.scm (grob-cause): Use it. Fixes PDF point and
11417 * flower/file-path.cc (is_dir, is_file): New function. Actually
11418 use result of stat when available.
11420 * flower/file-path.cc (find): Use it. Refactor. Fixes Mingw,
11421 absolute file name and root.
11423 * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
11425 * scm/editor.scm (get-editor-command): Typo: do not apply editor.
11427 * flower/file-name.cc (slashify): Bugfix, do substitute if no
11428 slashes in file name.
11430 2005-05-13 Jan Nieuwenhuizen <janneke@gnu.org>
11432 * Documentation/user/preface.itely (Preface): Run
11433 texinfo-all-menus-update.
11435 * scm/editor.scm (get-editor-command): Bugfix: allow full
11436 LYEDITOR setting, partial XEDITOR setting. With typo fix.
11438 * Documentation/pictures/lilypond-48.xpm: New file.
11440 * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
11442 * ly/Welcome_to_LilyPond.ly: New file.
11444 * lily/main.cc (main): Only identify if we have a terminal.
11446 * scm/backend-library.scm (postscript->png)
11447 (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
11450 2005-05-13 Heikki Junes <hjunes@cc.hut.fi>
11452 * Documentation/topdocs/AUTHORS.texi: polish, update.
11454 2005-05-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
11456 * Documentation/user/preface.itely (Notes for version 2.6): new
11459 * lily/dynamic-engraver.cc (stop_translation_timestep): first set
11460 finished_span_, then call typeset_all(). Fixes spurious "Hairpin
11461 is not fully contained" warnings.
11463 * lily/slur-scoring.cc (get_bound_info): remove warning.
11465 * lily/staff-symbol-engraver.cc (process_music): start initial
11466 spanner in process_music(). This fixes overrides of StaffSymbol
11469 * scm/framework-pdf.scm (Module): remove.
11471 * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
11473 * lily/ambitus-engraver.cc: formatting cleanups.
11475 * mf/feta-solfa.mf (Module): remove.
11477 * ChangeLog: more details about contributions.
11479 2005-05-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
11481 * lily/align-interface.cc (align_elements_to_extents): warn if
11482 called too early. Fixes: disappearing-staff-lines.ly
11484 * VERSION (PACKAGE_NAME): release 2.5.24
11486 2005-05-12 Jan Nieuwenhuizen <janneke@gnu.org>
11488 * stepmake/aclocal.m4: Typo.
11490 * flower/string.cc (substitute): Take two strings or two
11491 characters. Update callers.
11493 2005-05-11 Jan Nieuwenhuizen <janneke@gnu.org>
11495 * flower/file-name.cc (File_name): Slashify.
11497 * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
11499 * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
11501 * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
11503 * configure.in (gui_b): Use it.
11505 * lily/lilypond.rc.in: New file.
11507 * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
11509 2005-05-12 Graham Percival <gperlist@shaw.ca>
11511 * Documentation/user/advanced-notation.itely: edit of Text
11512 section; clarify text scripts vs. text markup.
11514 2005-05-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
11516 * lily/multi-measure-rest-engraver.cc
11517 (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
11518 separation items on start. Fixes mm rests in start of score.
11520 * lily/slur-scoring.cc (move_away_from_staffline): robustness,
11521 don't access StaffSymbol if not there.
11522 Fixes: crash-staff-symbol-engraver.ly.
11524 * lily/instrument-name-engraver.cc (class
11525 Instrument_name_engraver): data member first_. Create
11526 InstrumentName on start.
11528 2005-05-12 Graham Percival <gperlist@shaw.ca>
11530 * Documentation/user/instrument-notation.itely: add guitar
11533 * Documentation/user/introduction.itely,
11534 Documentation/user/lilypond.tely,
11535 Documentation/user/tutorial.itely: begin pruning
11536 unused (duplicated) cindex entries and misc cleanup.
11538 2005-05-12 Mats Bengtsson <mabe@s3.kth.se>
11540 * input/test/volta-chord-names.ly: Bring the explanation up to
11543 2005-05-11 Heikki Junes <hjunes@cc.hut.fi>
11545 * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
11546 Specify `@documentencoding utf-8' for html, ignore warnings.
11548 2005-05-11 Erik Sandberg <ersa9195@student.uu.se>
11550 * THANKS: Added bughunters.
11552 2005-05-11 Heikki Junes <hjunes@cc.hut.fi>
11554 * lily/main.cc: update help string for `lilypond -H'.
11556 * po/fi.po: update.
11558 2005-05-10 Graham Percival <gperlist@shaw.ca>
11560 * Documentation/user/advanced-notation.itely: minor fixes.
11562 2005-05-10 Jan Nieuwenhuizen <janneke@gnu.org>
11564 * scm/editor.scm: New module.
11566 * scm/lily.scm (gui-main): Use it.
11568 * scm/framework-gnome.scm (spawn-editor): Use it.
11570 * scripts/lilypond-invoke-editor.scm: Use it in new script.
11572 2005-05-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
11574 * scm/framework-ps.scm (load-font-via-GS): new function.
11576 * lily/pango-font.cc (pango_item_string_stencil): add support for
11579 * scm/output-ps.scm (glyph-string): add support for CID keyed font.
11581 2005-05-10 Graham Percival <gperlist@shaw.ca>
11583 * Documentation/user/basic-notation.itely: add @ref.
11585 * Documentation/user/advanced-notation.itely: add example
11588 2005-05-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
11590 * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
11592 * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
11593 going through ps2pdf wrappers.
11595 2005-05-09 Jürgen Reuter <reuter@ipd.uka.de>
11597 * Documentation/user/instrument-notation.itely: petrucci note
11598 heads: updated docu
11600 * input/regression/note-head-style.ly: updated regression test;
11603 * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
11606 * mf/parmesan-heads.mf: minor editing; use musicological names
11607 (rather than optical description) as note head names
11609 * scm/output-lib.scm: complete petrucci heads
11611 2005-05-09 Pal Benko <benkop@freestart.hu>
11613 * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
11616 2005-05-09 Jan Nieuwenhuizen <janneke@gnu.org>
11618 * lily/main.cc (main_with_guile): Remove no files check.
11620 * lily/main.cc (ly:usage): Export to Scheme.
11622 * scm/lily.scm (no-files-handler): New function.
11624 * scm/lily.scm (lilypond-main): Use it.
11626 * configure.in (gui_b): Add mbrtowc checking.
11627 Resurrect [utf8/]wchar.h checking.
11629 2005-05-09 Mats Bengtsson <mabe@s3.kth.se>
11631 * Documentation/user/advanced-notation.itely (Metronome marks):
11632 Add link to the program reference for MetronomeMark
11634 * Documentation/user/lilypond-book.itely (An example of a
11635 musicological document): Correct the example using psfonts
11637 2005-05-09 Heikki Junes <hjunes@cc.hut.fi>
11639 * po/fi.po: update after a lesson how to update entries against
11642 * po/TODO: document the lesson.
11644 2005-05-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
11646 * configure.in (gui_b): remove wcrtomb checking.
11648 * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11649 bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11651 2005-05-09 Mats Bengtsson <mabe@s3.kth.se>
11653 * scripts/convert-ly.py: In the conversion to version 1.9.0,
11654 keep Scheme expressions and strings unmodified when doing the
11655 conversion to postfix notation for slurs and beams. Should
11656 hopefully solve most related conversion problems.
11658 * Documentation/user/lilypond-book.itely : Clarify and correct how
11659 to call dvips with -h psfonts.
11661 2005-05-09 Jan Nieuwenhuizen <janneke@gnu.org>
11663 * Documentation/user/instrument-notation.itely (Entering lyrics):
11666 2005-05-09 Graham Percival <gperlist@shaw.ca>
11668 * Documentation/user/lilypond-book.itely: document PSFONTS file.
11670 * Documentation/user/lilypond.tely, lilypond-book.itely,
11671 tutorial.itely: change references to 2.5.x to 2.6.x.
11673 * Documentation/user/instrument-notation.itely: clarified \addlyrics
11676 * Documentation/user/invoking.itely: remove old info about
11679 * Documentation/topdocs/INSTALL.texi: remove old info about
11680 lilypond-profile, add warning about needing international fonts
11683 2005-05-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
11685 * lily/include/grob-info.hh (class Grob_info): make data member
11686 private. Changes throughout.
11688 * input/regression/alignment-order.ly: new file.
11690 * lily/vertical-align-engraver.cc (acknowledge_grob): read
11691 alignAboveContext and alignBelowContext
11693 2005-05-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
11695 * lily/pfb.cc (LY_DEFINE): add cast.
11697 * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11699 (write-preamble): warn about unknown fonts.
11701 * lily/pfb.cc (Module): new function ly:otf->cff
11703 * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11704 (get_otf_table): new function.
11706 2005-05-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
11708 * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11711 2005-05-06 Heikki Junes <hjunes@cc.hut.fi>
11713 * po/fi.po: apply second round of update.
11715 2005-05-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
11717 * scm/x11-color.scm (make-x11-color-handler): don't use
11718 #\sp. Apparently doesn't work on all platforms.
11720 2005-05-06 Graham Percival <gperlist@shaw.ca>
11722 * Documentation/user/advanced-notation.itely, putting.itely,
11723 tutorial.itely, global.itely, introduction.itely: really minor fixes.
11725 2005-05-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
11727 * VERSION (PACKAGE_NAME): release 2.5.23
11729 2005-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
11731 * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11734 * THANKS: Add translators for this release, convert to utf-8.
11736 * mf/GNUmakefile (MFTRACE_FLAGS):
11737 * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11738 outdir as option (WAS: hardcoded).
11740 2005-05-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
11742 * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11745 * THANKS: add Hans Forbrich.
11747 * Documentation/topdocs/NEWS.tely (Top): document new feature.
11749 * Documentation/user/basic-notation.itely (Staff symbol): document
11750 start/stop staff. Reference to ossia.ly
11752 * input/test/ossia.ly: new example using stop and startStaff.
11754 * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11755 in other words, don't create "|" barline at start of the score.
11756 (start_translation_timestep): don't set whichBar for start of score.
11758 * input/regression/staff-halfway.ly: use new functionality.
11760 * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11761 start and stop staff based on events.
11763 * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11765 * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11767 2005-05-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
11769 * Documentation/user/programming-interface.itely (How markups work
11770 internally ): remove \encoding reference.
11772 2005-05-04 Mats Bengtsson <mabe@s3.kth.se>
11774 * scripts/convert-ly.py: Attempt to do a smarter update of
11775 text markups from versions < 1.9.0 with arbitrary nesting.
11777 2005-05-04 Heikki Junes <hjunes@cc.hut.fi>
11779 * po/fi.po: convert to utf-8, and update.
11781 2005-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
11783 * make/lilypond.suse.spec.in: update from suse 2.4 package.
11785 * lily/*.cc: more <? >? to min/max changes
11787 * lily/include/interpretation-context-handle.hh: rename
11788 Interpretation_context_handle to Context_handle.
11790 2005-05-04 Heikki Junes <hjunes@cc.hut.fi>
11792 * input/regression/GNUmakefile (local_delete): use `find` together
11793 with `xargs` to avoid too long argument-lists in cmd line.
11795 2005-05-04 Graham Percival <gperlist@shaw.ca>
11797 * Documentation/user/introduction.itely: updates "About this manual".
11799 * Documentation/user/advanced-notation.itely,
11800 invoking.itely: minor fixes.
11802 2005-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
11804 * COPYING: add font exception. Update FSF address.
11806 * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11807 should be taken without child context.
11809 * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11811 * scm/define-markup-commands.scm (triangle): new command, as
11812 robust replacement for unicode Delta/Triangle.
11814 2005-05-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
11816 * ps/music-drawing-routines.ps: add fillp argument.
11818 * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11820 * lily/font-config.cc (init_fontconfig): don't add cff/
11822 * VERSION (PACKAGE_NAME): release 2.5.22
11824 * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11826 * lily/grace-engraver.cc (consider_change_grace_settings): use
11827 is_alias(). Fixes problem with CueVoice grace notes.
11829 * lily/simultaneous-music-iterator.cc (construct_children): call
11830 Music_iterator::quit() for iterators that start out invalid. This
11831 fixes indefinitely continuing contexts.
11833 * buildscripts/substitute-encoding.py: new file
11835 * Documentation/user/basic-notation.itely (Basic polyphony): fix
11838 * scripts/lilypond-book.py (write_if_updated): print file name.
11840 * Documentation/user/basic-notation.itely (Explicitly
11841 instantiating voices): idem.
11843 * Documentation/user/advanced-notation.itely (Text spanners):
11846 * lily/context.cc (default_child_context_name): the default child
11847 is now first in accepts_list_.
11849 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11850 \defaultchild to all relevant contexts. This fixes:
11853 (Probably also fixes similar problems with ancient
11854 transcriptions getting CueVoices instead of the desired voices.)
11856 * lily/context-def.cc (get_default_child): new function.
11857 (get_accepted): place default child in front of list.
11859 * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11861 * lily/include/context-def.hh (struct Context_def): add
11864 2005-05-03 Graham Percival <gperlist@shaw.ca>
11866 * scm/define-grobs.scm: remove "remove-first" line, since
11867 the absent property is set to #f anyway.
11869 * Documentation/user/basic-notation.itely,
11870 advanced-notation.itely, instrument-notation.itely: minor
11873 * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11875 * Documentation/user/advanced-notation.itely,
11876 changing-defaults.itely: consolidate Text stuff in
11879 * Documentation/user/global.itely: better docs for \header.
11881 * Documentation/user/putting.itely: new chapter; placeholder
11882 for future expansion.
11884 * Documentation/user/examples.itely: moved "suggestions for
11885 writing LP files" section into putting.itely.
11887 * Documentation/user/lilypond.itely: added new chapter,
11888 fixed the short table of contents.
11890 2005-05-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
11892 * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11893 infinity for unfeasible beams.
11895 * make/lilypond.fedora.spec.in (Group): idem.
11897 * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11899 * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11901 * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11904 * buildscripts/gen-emmentaler-scripts.py (i): idem.
11906 * mf/GNUmakefile: remove all CFF rules.
11908 * scm/framework-ps.scm (ps-embed-cff): reinstate.
11910 * lily/open-type-font-scheme.cc (LY_DEFINE):
11911 new function ly:otf-font-table-data.
11912 (LY_DEFINE): new function otf-font?
11914 2005-05-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
11916 * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11917 ($(outdir)/Fontmap.lily): idem.
11919 * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11920 for PFAEmmentaler-XXX.pfa.
11922 * Documentation/user/music-glossary.tely (accidental): NL
11923 translation of accidental.
11925 2005-05-02 Jan Nieuwenhuizen <janneke@gnu.org>
11927 * flower/include/international.hh: Bugfix: include "string.hh".
11929 * lily/include/mingw-compatibility.hh: New file.
11931 * flower/include/libc-extension.hh (memrev): Rename from strrev.
11933 * configure.in: Search for mingw wcrtomb library.
11935 2005-05-02 Mats Bengtsson <mabe@s3.kth.se>
11937 * scripts/convert-ly.py: Bug fix
11939 * Documentation/user/changing-defaults.itely (Common tweaks):
11940 Added example where the context has to be specified explicitly
11943 2005-05-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
11945 * scripts/lilypond-book.py (ly_options): set timing to #f for
11948 * scripts/convert-ly.py (conv): typo.
11950 * flower/*.cc: remove <? and >?
11952 * lily/*.cc: remove <? and >?
11954 * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11955 that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11958 2005-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
11960 * lily/part-combine-engraver.cc: add space to variable list.
11962 2005-04-30 Graham Percival <gperlist@shaw.ca>
11964 * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11965 remove-first to false (matches docs)
11967 * Documentation/user/advanced-notation.itely: corrected docs
11968 concerning remove-first.
11970 2005-04-29 Mats Bengtsson <mabe@s3.kth.se>
11972 * lily/part-combine-engraver.cc: make sure that the relevant
11973 properties are included in the documentation.
11975 2005-04-28 Graham Percival <gperlist@shaw.ca>
11977 * Documentation/user/lilypond-book.itely: Bernard's docs
11978 for \betweenLilyPondSystem.
11980 2005-04-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
11982 * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11985 2005-04-28 Pal Benko <benkop@freestart.hu>
11987 * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11988 only on vertical lines of flexa shape, and use a constant
11989 thickness value for horizontal lines (patch slightly modified by
11992 * lily/include/mensural-ligature.hh: make 2 comments clearer
11994 2005-04-28 Jürgen Reuter <reuter@ipd.uka.de>
11996 * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11997 to need_extra_horizontal_space; bugfix: use class scope to avoid
11998 global namespace pollution
12000 * Documentation/user/instrument-notation.itely (ligatures): added
12001 comment on possible future syntax change and how to work around
12003 * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
12004 (epiphonus, cephalicus): fine-tune shape of plica head for narrow
12005 intervals (fixes agnus dei example)
12007 * Documentation/user/instrument-notation.itely (white mensural
12008 ligatures): selected a more illustrative example
12010 2005-04-28 Heikki Junes <hjunes@cc.hut.fi>
12012 * Documentation/index.html.in: specify utf-8 charset in meta content.
12014 2005-04-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
12016 * python/lilylib.py (make_ps_images): bugfixes; GS can produce
12017 empty 2nd page for single page.
12019 * scm/lily.scm: remove p&c definitions.
12021 * po/zh_TW.po (Module): new translation.
12023 * lily/lily-guile.cc (ly_chain_assoc): remove.
12025 * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
12026 (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
12028 2005-04-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
12030 * lily/beaming-info.cc: remove infinity_i
12032 * scripts/abc2ly.py (out_filename): fix thinko with \version.
12034 2005-04-26 Graham Percival <gperlist@shaw.ca>
12036 * Documentation/user/basic-notation.itely,
12037 instrument-notation.itely, advanced-notation.itely,
12038 changing-defaults.itely: minor fixes. Added docs
12039 for colors to advanced-notation.itely.
12041 * Documentation/user/advanced-notation.itely: fixed compile
12042 problem and added Bernard's x11-color doc patch.
12044 2005-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
12046 * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
12047 alright this time round.
12049 2005-04-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
12051 * Documentation/topdocs/INSTALL.texi (Top): idem.
12053 * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
12055 * VERSION (MAJOR_VERSION): release 2.5.21
12057 * scm/output-ps.scm (grob-cause): bugfix.
12059 2005-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
12061 * cygwin/*: Update.
12063 * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
12066 * scm/output-ps.scm (grob-cause): Bugfix.
12068 * scm/lily.scm (ly:load): Remove x11-color.
12070 * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
12071 quote executable, fixes getting version from program --with
12073 (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
12076 * Documentation/user/GNUmakefile: Only build music-glossary with
12077 rendered lilypond snippets during web.
12079 2005-04-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
12081 * po/de.po: update.
12083 * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
12085 2005-04-22 Laura Conrad <lconrad@laymusic.org>
12088 second title line append with punctuation dash character;
12089 encode abc2ly python strings in utf-8
12091 2005-04-21 Laura Conrad <lconrad@laymusic.org>
12093 * scripts/abc2ly fix chords (again)
12095 2005-04-22 Bernard Hurley <bernard@fong-hurley.org.uk>
12097 * scm/x11-color.scm: new file
12098 All x11 color names can be accessed with:
12099 #(x11-color 'ColorName),
12100 #(x11-color "ColorName") or:
12101 #(x11-color "color name")
12102 If the x11 color name is not recognised then it defaults
12105 * scm/lily.scm: amended to call scm/x11-color.scm
12107 2005-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
12109 * Documentation/user/invoking.itely (Reporting bugs): comment out
12110 reference to online PNG bug repository.
12112 2005-04-21 Jan Nieuwenhuizen <janneke@gnu.org>
12114 * lily/translator-scheme.cc (ly:translator-property): Remove.
12117 * lily/context-scheme.cc (ly:context-now): Move from translator.
12120 2005-04-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
12122 * input/regression/grid-lines.ly (skips): refine example.
12124 * scm/define-context-properties.scm
12125 (all-user-translation-properties): doc autoBeamCheck
12127 * input/regression/grid-lines.ly (Module): new file.
12129 * lily/grid-point-engraver.cc (Module): new file.
12131 * lily/grid-line.cc (Module): new file.
12133 * lily/grid-line-span-engraver.cc (Module): new file.
12135 * lily/grid-line-interface.cc (Module): new file.
12137 2005-04-21 Jan Nieuwenhuizen <janneke@gnu.org>
12139 * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
12140 missing parameter, actualy cdr through list. Actually return a
12141 list with ENTRY removed (was '()).
12143 * scripts/convert-ly.py: Update. Print warning if file cannot be
12145 (do_conversion): Fix printing of continuation comma.
12147 * Documentation/user/advanced-notation.itely (Beam formatting):
12148 Remove refbugs about compound time and mixed duration.
12150 * scm/auto-beam.scm (default-auto-beam-settings): Write out all
12151 modulo moments explicitely.
12153 * lily/moment.cc (operator %): New function.
12155 * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
12157 * lily/translator-scheme.cc (ly:translator-now,
12158 ly:translator-property): New function.
12160 * scm/auto-beam.scm (default-auto-beam-check): New function.
12162 * lily/auto-beam-engraver.cc (test_moment): Use it.
12164 * flower/rational.cc (operator %): Bugfix.
12166 2005-04-21 Erik Sandberg <ersa9195@student.uu.se>
12168 * scripts/abc2ly: Bugfix
12170 2005-04-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
12172 * python/fontextract.py (write_extracted_fonts): bugfix, too many
12173 %'s on EndFont comment.
12175 * lily/ledger-line-spanner.cc: some more words of explanation.
12177 2005-04-20 John Williams <williams@tni.com>
12179 * scripts/lilypond-book.py: htmlquote bugfix.
12180 Allow snippets to be given distinct filenames.
12181 Allow the default alt text to be overridden.
12183 2005-04-20 Erik Sandberg <ersa9195@student.uu.se>
12185 * ly/performer-init.ly: Bugfix
12187 * THANKS: Added bughunters.
12189 2005-04-20 Jan Nieuwenhuizen <janneke@gnu.org>
12191 * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
12193 * lily/auto-beam-engraver.cc (test_moment): Test exact measure
12194 position (was: use modulo measure length).
12196 * configure.in (no gui_b): Remove optional gtk+ requirement.
12198 2005-04-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
12200 * Documentation/user/basic-notation.itely (Pitches): add
12203 * lily/dynamic-engraver.cc (process_music): set right bound to
12204 script if present. Else, do not set.
12205 (acknowledge_grob): only set right bound of finished spanner to
12206 note column if no other bound is set.
12208 * python/lilylib.py (make_ps_images): switch back to png16m.
12210 2005-04-19 Jan Nieuwenhuizen <janneke@gnu.org>
12212 * scripts/lilypond-book.py (write_if_updated): Bugfix for not
12213 writing up to date file. Add dvips usage suggestion.
12215 * scripts/convert-ly.py: Fix error message.
12216 Print usage if no files on command line.
12217 (usage): Add example usage.
12219 * input/test/compound-time.ly: New file.
12221 * input/test/circle.ly: New file.
12223 * Documentation/topdocs/NEWS.tely: Use them.
12225 * input/test/boxed-stencil.ly: Remove \score.
12227 * buildscripts/mf-to-table.py (base): Add .log dependency.
12229 * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
12230 pfa's. Add .log dependency
12232 * scm/define-markup-commands.scm (lower): New command.
12234 * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
12237 2005-04-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
12239 * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
12240 also to finished cresc as right bound. This fixes:
12241 skip-string-decresc.ly
12243 * lily/slur-scoring.cc (get_bound_info): robustness: substitute
12244 relative_coordinate if extent is empty.
12246 * lily/stem.cc (width_callback): determine correct extent if flag
12247 is not there. This fixes slur-no-flag.ly
12249 * lily/grace-engraver.cc (consider_change_grace_settings): new
12251 (initialize): also consider_change_grace_settings() on
12252 initialization. Fixes large grace notes at start of score.
12254 * lily/break-align-interface.cc (do_alignment): don't translate if
12255 total_extent is empty.
12257 * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
12259 2005-04-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
12261 * scm/output-ps.scm (grob-cause): don't add cwd if path starts
12264 2005-04-18 Jan Nieuwenhuizen <janneke@gnu.org>
12266 * stepmake/aclocal.m4: Remove tfm_path.
12268 2005-04-18 Nicolas Sceaux <nicolas.sceaux@free.fr>
12270 * scm/music-functions.scm (markup-expression->make-markup): fix
12271 bug with cons arguments of markup commands.
12272 (music->make-music): fix music expression property list building
12274 2005-04-18 Jan Nieuwenhuizen <janneke@gnu.org>
12276 * aclocal.m4: Massage package names.
12280 2005-04-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
12282 * VERSION (PACKAGE_NAME): release 2.5.20
12284 * lily/stem.cc (calc_stem_info): add minimum Y extent of
12285 stem-tremolo. Fixes: bugs/tremolo-stem-length-beamed
12287 * lily/percent-repeat-engraver.cc (try_music): add measure before
12288 next_moment to future processing moment. Fixes:
12289 percent-repeat-mm-rest.ly
12290 (process_music): don't add moment for 2nd time.
12292 * input/regression/repeat-percent.ly: add mmrests as extra test.
12294 * lily/axis-group-engraver.cc (acknowledge_grob): read
12295 keepAliveInterfaces to decide what to kill.
12297 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
12298 percent-repeat-interface to keepAliveInterfaces. This fixes
12299 percent-repeat-harakiri.
12301 2005-04-17 Jan Nieuwenhuizen <janneke@gnu.org>
12305 2005-04-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
12307 * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
12309 * aclocal.m4: remove --enable-tfm-path configure option
12311 * input/test/ancient-font.ly (lowerStaff): clef name errors.
12313 * scm/backend-library.scm (postscript->png): newline after
12316 * lily/paper-score-scheme.cc (LY_DEFINE): new file.
12317 (LY_DEFINE): ly:paper-score-paper-systems: new function
12319 * lily/score-scheme.cc (LY_DEFINE): require music argument.
12321 * lily/score.cc (default_rendering): use Music_output too.
12323 * input/test/chord-names-languages.ly (Module): rename file.
12325 * lily/text-spanner.cc: add bound-padding.
12327 * lily/paper-book.cc (systems): accept Paper_score
12328 iso. Paper_system vector.
12330 * input/regression/line-arrows.ly: new file.
12332 * lily/paper-score.cc (process): run get_paper_systems() only once.
12334 * lily/line-spanner.cc (line_stencil): add arrows.
12336 2005-04-18 Jonatan Liljedahl <lijon@kymatica.com>
12338 * lily/line-interface.cc (make_arrow): new function.
12341 2005-04-18 Mathieu Giraud <magiraud@free.fr>
12343 * input/test/chord-names-german.ly: update for italian/french
12346 * Documentation/user/instrument-notation.itely (Printing chord
12349 2005-04-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
12351 * lily/include/paper-score.hh (class Paper_score): remove unused
12354 * lily/book.cc (process): add -COUNT to midi output.
12356 * lily/score.cc (book_rendering): remove outname argument
12357 (book_rendering): return list of Music_outputs.
12359 * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
12361 * lily/book.cc (process): loop over Music_outputs returned from
12362 Score::book_rendering().
12364 * lily/*.cc (width_callback): remove spurious "unused" warnings
12365 for assert (axis==[XY]_AXIS);
12367 * lily/include/music-output.hh (class Music_output): smobify class.
12369 * lily/include/paper-score.hh (class Paper_score): make members
12372 * lily/performance.cc (process): return #f iso. #<undefined>. This
12373 prevents #<undefined> leaking into GUILE-userspace.
12375 2005-04-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
12377 * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
12379 2005-04-17 Mathieu Giraud <magiraud@free.fr>
12381 * scm/chord-name.scm : support for italian and french
12384 * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
12385 a space defined by chordPrefixSpacer when the root name is
12386 direclty followed by a prefix.
12388 * ly/engraver-init.ly : chordPrefixSpacer
12389 * scm/define-context-properties.scm : chordPrefixSpacer
12390 * ly/property-init.ly : italianChords, frenchChords
12392 2005-04-17 Jan Nieuwenhuizen <janneke@gnu.org>
12394 * mf/feta-din.mf: Remove.
12396 * mf/GNUmakefile (fontdir): Bugfix.
12398 * mf/SConstruct: Some updates.
12400 * SConstruct: Require pkg-config.
12401 (test_program): Bugfix for double digit version compares, use
12402 integer (not string-) compare.
12403 Optionally require gs 8.14.
12405 * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
12407 * lily/*: s/ifdef HAVE_*/if have/.
12409 * SConstruct (test_lib): New function. Update pkg-config and some
12410 other requirements.
12412 * configure.in: Require pkg-config. Enforce REQUIRE and version for
12413 freetype, pangof2t.
12415 2005-04-16 Jan Nieuwenhuizen <janneke@gnu.org>
12417 * po/lilypond.pot, ...: Update using bison-CVS.
12419 * python/lilylib.py (make_ps_images): Fixo.
12421 2005-04-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
12423 * python/lilylib.py (make_ps_images): typo.
12425 * configure.in (gui_b): make bison optional.
12427 * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
12429 2005-04-16 Bernard Hurley <bernard@fong-hurley.org.uk>
12431 * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
12432 with one parameter can be defined in a LaTeX file when processed
12433 by lilypond-book this will be evaluated between the systems of
12434 a multi-system score. The parameter is the number of systems processed.
12436 2005-04-16 Jan Nieuwenhuizen <janneke@gnu.org>
12438 * python/lilylib.py (make_ps_images): Escape newline.
12440 * Documentation/user/music-glossary.tely: Run
12441 texinfo-all-menus-update.
12443 2005-04-14 Jan Nieuwenhuizen <janneke@gnu.org>
12445 * scm/lily-library.scm (old-relative-not-used-message)
12446 (version-not-seen-message): Add input-file-name-location to message.
12448 * lily/parser.yy (lilypond): Add token aliases.
12450 * Documentation/user/music-glossary.tely (accidental): Fixes. Do
12451 not confuse with alteration.
12454 2005-04-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
12456 * python/lilylib.py (make_ps_images): use -dEPSCrop
12458 * VERSION (PACKAGE_NAME): release 2.5.19
12460 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
12461 only put xrefs in info documentation.
12463 * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
12464 .pdf rule to tex-rules.make.
12466 * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
12467 from -systems.* output.
12469 * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
12470 directly, remove -$(PAGESIZE) target.
12472 * input/test/embedded-postscript.ly: update.
12474 2005-04-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
12476 * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
12478 * Documentation/user/changing-defaults.itely (Font selection):
12479 document font-name.
12481 * input/regression/font-name.ly: show Pango fonts for
12482 font-name. Update example.
12484 * lily/pango-select.cc (properties_to_pango_description): don't
12485 convert symbol font-size to number, but use to lookup.
12487 * python/fontextract.py (write_extracted_fonts): add VMusage 0.
12489 * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
12490 (NAME . FILE-NAME) tuples for font descriptions.
12491 (write-preamble): display BeginFont DSC comments.
12493 * python/fontextract.py (write_extracted_fonts): new file. Extract
12494 font resources from a PS file.
12496 * scripts/lilypond-book.py (option_definitions): --psfonts option.
12497 (Compile_error.process_include): do_file returns chunks.
12499 * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
12501 * make/lysdoc-targets.make: .texi is .PRECIOUS
12503 * scripts/lilypond-book.py (write_if_updated): new function.
12505 2005-04-13 Jan Nieuwenhuizen <janneke@gnu.org>
12507 * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
12509 2005-04-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
12511 * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
12513 * input/regression/markup-syntax.ly: remove \score.
12515 * scm/define-markup-commands.scm (draw-circle): add fill argument
12517 * scm/stencil.scm (make-circle-stencil): add fill argument
12519 * ps/music-drawing-routines.ps: add fill argument.
12521 * ly/performer-init.ly: add CueVoice to MIDI too.
12523 * ps/music-drawing-routines.ps: new routine BeginEPSF /
12526 * input/regression/markup-eps.ly: new file.
12528 * scm/framework-ps.scm (write-preamble): change order: vars should
12529 be inited before procedures.
12531 * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
12534 * scm/define-markup-commands.scm (epsfile): add epsfile command.
12536 2005-04-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
12538 * configure.in (gui_b): add check for ghostscript 8.15
12540 2005-04-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
12542 * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
12543 start of line. Fixes cresc-after-newline.ly
12545 * lily/source-file.cc (file_line_column_string): use get_column().
12547 2005-04-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
12549 * lily/source-file.cc (get_column): utf-8 support for column numbers.
12551 2005-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
12553 * lily/*: use message () iso progress_indication () for messages.
12554 Revise/uniformise user messages.
12556 * flower/warn.cc (progress_indication): New function.
12557 (message): Use it. Fixes newline problems.
12559 * config.make.in (webdir): Sort out install dirs.
12561 * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
12563 * python/lilylib.py (command_name): Bugfix.
12566 2005-04-11 Pedro Kroger <kroeger@pedrokroeger.net>
12568 * lily/main.cc: --help says what types of backends are availabe
12570 2005-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
12572 Fix ./VERSION dependency, and without need to reconfigure.
12574 * lily/main.cc (setup_paths): Update.
12576 * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
12578 * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
12580 * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
12581 Add \line for some simplistic cases.
12583 * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
12585 2005-04-10 Nicolas Sceaux <nicolas.sceaux@free.fr>
12587 * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
12588 to compile LY files (useful for adding eg. "-I" args)
12589 (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
12590 2Gnome command for gnome backend.
12591 (LilyPond-command-formatgnome): call the 2Gnome command. key
12594 2005-04-10 Jan Nieuwenhuizen <janneke@gnu.org>
12596 * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
12597 depend on all PNG images.
12599 2005-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
12601 * GNUmakefile.in: Bugfix: also link .map files.
12603 2005-04-09 Nicolas Sceaux <nicolas.sceaux@free.fr>
12605 * scm/music-functions.scm (music->make-music): generate
12606 a (make-music ...) sexpr from a music expression.
12607 (display-scheme-music): use guile pretty printer to display the
12610 2005-04-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
12612 * ly/engraver-init.ly: reindent.
12615 * scm/music-functions.scm (music-pretty-string): handle moments
12617 (music-pretty-string): only print non-empty lists.
12618 (cue-substitute): create CueVoice context, which has smaller type.
12620 * lily/moment-scheme.cc (LY_DEFINE): new methods
12621 ly:moment-grace-{numerator,denominator}
12623 * lily/context-handle.cc: remove quit() method.
12625 * lily/font-config.cc (init_fontconfig): be verbose about font path.
12626 (init_fontconfig): success is 0, not !0
12628 2005-04-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
12630 * mf/feta-nummer-code.mf (code): add plus glyph.
12632 * lily/tie.cc (print): idem.
12634 * lily/slur.cc (print): don't use thickness property for
12635 slur shape-thickness.
12637 * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
12638 while adding stencils.
12640 * scm/define-markup-commands.scm (with-color): with-color markup
12642 (whiteout): new markup command
12643 (filled-box): new markup command
12645 2005-04-07 Jan Nieuwenhuizen <janneke@gnu.org>
12647 * Documentation/topdocs/NEWS.tely (Top): Make tex-able. Handy
12650 * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12651 PFAAybabtu-Regular. Fixes feta font in PDFs.
12653 Notes for tetex-3.0 make web:
12654 psclean.map: s/uhv8a/uhvr8a/
12660 2005-04-06 Nicolas Sceaux <nicolas.sceaux@free.fr>
12662 * scm/music-functions.scm (music-pretty-string): fix bug with
12665 2005-04-06 Jan Nieuwenhuizen <jan.nieuwenhuizen@aspiratie.nl>
12667 * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12669 2005-04-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
12671 * scripts/lilypond-book.py (Lilypond_snippet.__init__):
12672 only process options if they're there.
12673 (write_file_map): add version-seen? to snippet-map.ly
12675 2005-04-06 Jan Nieuwenhuizen <jan.nieuwenhuizen@aspiratie.nl>
12677 * scripts/lilypond-book.py (split_options): Bugfix. Small code
12678 formatting cleanups.
12680 * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12681 Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12683 2005-04-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
12685 * scm/framework-ps.scm (ps-font-command): don't hash, just use
12688 * lily/main.cc (setup_paths): either add mf/out to search path or
12689 fonts/{otf,type1,etc}
12691 * lily/font-config.cc (init_fontconfig): either add mf/out to
12692 FontConfig or fonts/{otf,type1,etc}
12694 * GNUmakefile.in: don't put mf/ link in share/ dir.
12696 * lily/staff-spacing.cc: move same-direction-correction to
12697 note-spacing-interface
12699 * scm/lily.scm (lilypond-main): use variable argument count for
12702 * lily/font-config.cc (init_fontconfig): add operator pacification
12705 * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12707 * buildscripts/gen-emmentaler-scripts.py (i): generate
12708 PFAEmmentaler as well.
12710 * scm/framework-ps.scm (munge-lily-font-name): new function
12711 (write-preamble): hack: insert PFA equivalent of CFF into
12712 .PS. This makes LilyPond output printable on normal PS printers
12715 * buildscripts/gen-emmentaler-scripts.py (i): generate
12716 PFAEmmentaler.pfa aswell.
12718 2005-04-06 John Williams <williams@tni.com>
12720 * scripts/lilypond-book.py: refactor the compose_ly procedure.
12722 2005-04-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
12724 * scm/page-layout.scm (default-page-make-stencil): always combine
12725 the header stencil, even if empty. This prevents the body text to
12726 reach up to the margins.
12728 * po/rw.po (Module): new file, for Kinyarwanda.
12730 * input/test/spacing-optical.ly (Module): new file.
12732 * lily/staff-spacing.cc: add same-direction-correction
12734 2005-04-06 Jan Nieuwenhuizen <janneke@gnu.org>
12736 * Documentation/user/introduction.itely (Engraving): Comment-out
12739 2005-04-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
12741 * scm/define-grob-properties.scm (all-user-grob-properties): add
12742 same-direction-correction
12744 * VERSION: release 2.5.18
12746 2005-04-05 Jan Nieuwenhuizen <janneke@gnu.org>
12748 * lily/grob.cc (mark_smob): Check pscore->layout_ before
12749 dereferencing. Fixes make web.
12751 * lily/midi-stream.cc: Handle unwritable midi file. Include
12754 * Documentation/user/: Fix links.
12756 2005-04-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
12758 * lily/text-interface.cc (Module): rename from text-item.cc
12760 * input/regression/apply-output.ly (texidoc): function naming fix.
12762 * lily/time-signature-performer.cc (derived_mark): new function.
12764 * lily/lily-parser-scheme.cc: print mapped file name for progress
12766 * scripts/lilypond-book.py (find_linestarts): new function.
12767 (find_toplevel_snippets): keep track of line numbers.
12769 * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12772 * ly/declarations-init.ly (partCombineListener): use
12773 ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12775 * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12777 2005-04-04 Jan Nieuwenhuizen <janneke@gnu.org>
12779 * lily/text-item.cc: Fix link.
12781 * Documentation/user/changing-defaults.itely (Changing defaults):
12782 Fix programs reference links.
12784 * Documentation/user/music-glossary.tely: Convert to utf-8.
12786 2005-04-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
12788 * make/lilypond-vars.make: remove TEXMF from variables.
12789 remove DEB_BUILD pk font variables.
12790 remove GUILE_LOAD_PATH
12791 remove TeX memory vars.
12793 2005-04-04 Werner Lemberg <wl@gnu.org>
12795 * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12797 2005-04-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
12799 * ps/lilyponddefs.ps: remove reencode-font
12801 * lily/simple-spacer.cc (add_columns): also compare
12802 directly. Column rank doesn't distinguish between broken and
12803 unbroken columns. This fixes large spaces before time sig changes.
12805 * Documentation/user/point-and-click.itely: document ly:set-option.
12807 * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12808 point_and_click_global is set.
12810 * lily/scm-option.cc (LY_DEFINE): add point-and-click
12811 ly:set-option argument.
12813 2005-04-03 Jan Nieuwenhuizen <janneke@gnu.org>
12815 * GNUmakefile.in: Include symlinks in webball.
12817 * Documentation/user/GNUmakefile (source-links): Add symlinks to
12818 source dir for split and non-split manuals.
12820 * Documentation/user/*y: Fix @uref/@inputfile links for
12821 split/non-split HTML documents.
12823 * Documentation/user/GNUmakefile (local-WWW): Do not generate
12826 2005-04-02 Jan Nieuwenhuizen <janneke@gnu.org>
12828 * GNUmakefile.in: Add newline.
12830 2005-04-01 Erlend Aasland <erlenda@gmail.com>
12832 * tex/lilyponddefs.tex: use color instead of xcolor
12833 * scm/output-tex.scm: minor editing
12835 2005-04-02 Nicolas Sceaux <nicolas.sceaux@free.fr>
12837 * scm/music-functions.scm (display-scheme-music): pretty printer
12838 for music expressions.
12840 2005-04-02 Jan Nieuwenhuizen <janneke@gnu.org>
12842 * buildscripts/install-info-html.sh (index_file): Fix link.
12844 2005-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
12846 * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12848 * Documentation/index.html.in: Add size estimates with some big pages.
12850 * Documentation/user/tutorial.itely (Running LilyPond for the
12851 first time): Add/replace some @rglos links. TODO: add more
12852 @rglos links in tutorial, test non-intrusiveness (.css).
12854 * stepmake/bin/add-html-footer.py (do_file): Remove info's
12855 annoying's indication of referencing external document.
12857 * Documentation/user/GNUmakefile: Split version of glossary too.
12858 * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12859 links, not only for html.
12861 * Documentation/user/introduction.itely: Fix some links for other
12862 than html, do not use `here' as link name.
12864 2005-03-31 Jan Nieuwenhuizen <janneke@gnu.org>
12866 * scm/documentation-generate.scm (string-append): Fix @usermanref,
12869 2005-03-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
12871 * scm/page-layout.scm (default-page-make-stencil): only add header
12872 if existing and not empty. Fixes spurious programming error.
12874 * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12876 2005-03-31 Erlend Aasland <erlenda@gmail.com>
12878 * scm/output-tex.scm: implement {re,}setcolor
12879 * tex/lilyponddefs.tex: use color package
12881 2005-03-31 Jan Nieuwenhuizen <janneke@gnu.org>
12883 * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12884 additions to website.
12886 * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12888 * Documentation/user/macros.itexi: Fix @usermanref html links in
12889 split documents: use @inforef.
12891 2005-03-30 Graham Percival <gperlist@shaw.ca>
12893 * Documentation/user/programming-interface.itely: minor fix.
12895 * Documentation/user/advanced-notation.itely: added info to
12896 Metronome markings.
12898 2005-03-30 Jan Nieuwenhuizen <janneke@gnu.org>
12900 * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12901 use box-stencil. Remove y-padding argument.
12902 (make-stencil-circler): New function.
12904 * buildscripts/lilypond-words.py (F):
12905 * elisp/SConscript (a):
12906 * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12907 * vim/SConscript (a):
12908 * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12910 * lily/general-scheme.cc: Build fix.
12913 * input/regression/markup-scheme.ly:
12914 * input/regression/markup-syntax.ly: Drop 'new-' from name.
12916 * scm/stencil.scm (make-circle-stencil): New function.
12918 * scm/define-markup-commands.scm (draw-circle): Use it. New
12919 name (was cicle). Update callers.
12920 (circle): New markup command, similar to box.
12922 * scm/stencil.scm (circle-stencil): New function.
12924 2005-03-29 David Jedlinsky <lilypond@ipnh.com>
12926 * configure.in: Detect libutf8/wchar.h variant.
12928 * stepmake/aclocal.m4: Modify shared size test.
12930 2005-03-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
12932 * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12934 2005-03-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
12936 * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12938 * VERSION (PACKAGE_NAME): release 2.5.17
12940 2005-03-29 Jan Nieuwenhuizen <janneke@gnu.org>
12942 * scm/backend-library.scm (postscript->png): Fix comment and png
12945 * GNUmakefile.in (link-tree): Fix locales.
12947 2005-03-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
12949 * lily/stencil-scheme.cc (LY_DEFINE): change to
12950 ly:stencil-aligned-to, non mutating.
12952 * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12954 * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12956 * lily/quote-iterator.cc (derived_mark): call
12957 Music_wrapper_iterator::derived_mark() too.
12959 * lily/grace-engraver.cc (derived_mark): change signature, add
12962 2005-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
12964 * SConstruct (symlink):
12965 * GNUmakefile.in (link-tree): Add scripts to prefix.
12967 * lily/general-scheme.cc (ly:effective-prefix): New function.
12969 * scm/backend-library.scm (postscript->png): Use it.
12971 2005-03-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
12973 * lily/paper-score.cc (process): don't delete grobs after
12974 producing stencils.
12976 * scm/part-combiner.scm (determine-split-list): switch off
12979 * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12982 * scm/define-context-properties.scm
12983 (all-user-translation-properties): add stringNumberOrientations.
12985 * lily/new-fingering-engraver.cc (position_scripts): make generic,
12986 so fingering and string-numbers are separately controlled.
12988 2005-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
12990 * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12993 2005-03-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
12995 * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12997 * config.hh.in: add HAVE_FONTCONFIG.
12999 * Documentation/user/instrument-notation.itely (String number
13000 indications): new node.
13002 * input/regression/new-markup-syntax.ly (texidoc): add circle.
13004 * lily/new-fingering-engraver.cc (add_string): new function.
13005 (acknowledge_grob): accept string-number-event as well.
13007 * scm/define-markup-commands.scm (circle): new markup command.
13009 * scm/output-lib.scm (print-circled-text-callback): new function.
13011 * lily/GNUmakefile: move ifeq after include stepmake.make.
13013 2005-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
13015 * config.make.in (HAVE_LIBKPATHSEA_SO):
13016 * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
13018 * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
13022 * debian/control: Update.
13024 2005-03-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
13026 * input/test/title-markup.ly (spaceTest): remove.
13028 * input/test/embedded-tex.ly (Module): remove.
13030 * input/test/music-box.ly: use 'name property, not ly:music-name.
13032 * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
13034 * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
13036 2005-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
13038 * Documentation/topdocs/INSTALL.texi (Top): Remove information
13039 about xdeltas. Add information about CVS.
13041 * scm/lily.scm (lilypond-main): Fix invocation of handler,
13042 gracefully handle failed files.
13044 * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
13046 * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
13049 * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
13050 No unnecessarily specific i18n messages. Remove stray `1'.
13052 2005-03-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
13054 * buildscripts/lys-to-tely.py (strip_extension): add utf-8
13057 * scm/documentation-lib.scm (texi-file-head): set utf-8
13060 * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
13061 Delta, not the Symbol one.
13063 * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
13066 * Documentation/topdocs/INSTALL.texi (Top): add running
13067 requirement as compilation requirement.
13069 2005-03-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
13071 * buildscripts/mutopia-index.py (headertext): add h1 header and
13072 utf-8 charset meta field.
13074 * input/GNUmakefile: prune example list.
13076 * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
13079 * lily/slur-scoring.cc (get_base_attachments): only look at stem
13080 extent for visible stems.
13082 * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
13084 2005-03-27 Jan Nieuwenhuizen <janneke@gnu.org>
13086 * Documentation/topdocs/INSTALL.texi (Top): Updates.
13088 * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
13090 2005-03-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
13092 * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
13093 pass inf/nan into slur scoring.
13095 * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
13098 * scripts/abc2ly.py (dump_voices): use alphabet().
13100 2005-03-27 Jeff Smith <whydoubt@yahoo.com>
13102 * mf/GNUmakefile (depth): use $(FONTFORGE).
13104 2005-03-27 Matthias Neeracher <neeracher@mac.com>
13106 * flower/include/virtual-methods.hh: simplify. Patch by
13108 2005-03-25 John Williams <williams@tni.com>
13110 * scripts/lilypond-book.py (main): add png for HTML too, guess
13113 2005-03-25 Graham Percival <gperlist@shaw.ca>
13115 * Documentation/topdocs/INSTALL.texi: now recommends
13116 lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
13118 * Documentation/user/basic-notation.itely,
13119 Documentation/user/tutoria.itely: warn about
13120 only one (phrasing) slur at once.
13122 2005-03-24 Pedro Kroger <kroeger@pedrokroeger.net>
13124 * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
13126 2005-03-23 Graham Percival <gperlist@shaw.ca>
13128 * Documentation/user/basic-notation.itely: fixed info about
13129 ending a (de)cresc.
13131 * Documentation/user/lilypond-book.itely: fixed
13132 lilypond-book filter example and warned about not doing
13133 --filter and --process at the same time.
13135 2005-03-23 Mats Bengtsson <mabe@s3.kth.se>
13137 * lily/parser.yy (bass_number),
13138 Documentation/user/instrument-notation.itely (Figured bass):
13139 Add the possibility to use text markup in figured bass.
13141 2005-03-19 Graham Percival <gperlist@shaw.ca>
13143 * Documentation/user/global.itely: added info about naming
13144 identifiers and breakbefore.
13146 * Documentation/user/invoking.itely: added info about batch
13147 processing files with convert-ly, removed references to TeX
13148 in the jail section.
13150 * Documentation/user/examples.itely: possibly fixed piano
13153 * Documentation/user/advanced-notation.itely: added info
13154 about removing other types of Staff.
13156 * Documentation/user/instrument-notation.itely: possibly
13157 fixed piano staff line switch.
13159 * Documentation/user/changing-defaults.itely: added info
13160 about using normal font in titles.
13162 2005-03-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
13164 * VERSION (PATCH_LEVEL): release 2.5.16
13166 * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
13169 2005-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
13171 * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
13174 * python/lilylib.py (make_ps_images):
13175 * scm/backend-library.scm (postscript->pdf, postscript->png):
13176 Quote file name. Use format rather than string-append juggling.
13178 2005-03-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
13180 * python/lilylib.py (make_ps_images): add x to -g argument.
13182 * lily/key-performer.cc (create_audio_elements): don't use
13183 scm_eval_string. Check for minor 3rd directly.
13185 * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
13186 (sarabandeCelloGlobal): key is D minor, not F major.
13188 2005-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
13190 Fix truncated --png output (Peter Danenberg).
13192 * python/lilylib.py (make_ps_images):
13193 * scripts/ps2png.py (copyright): Grok --papersize option.
13195 * scm/backend-library.scm (postscript->png): Add parameter
13196 PAPERSIZE. Update callers.
13198 * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
13199 Fixes symbol placement.
13202 * lily/stencil.cc: Use "libc-extension.hh" (WAS:
13203 <libc-extension.hh>).
13205 2005-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
13209 * buildscripts/fixcc.py: Update.
13211 Builddir run fixes.
13213 * HACKING (datadir): Add VERSION.
13215 * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
13218 2005-03-15 Werner Lemberg <wl@gnu.org>
13220 * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
13221 diagonal stem doesn't become thinner.
13223 2005-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
13225 * buildscripts/fixcc.py: Fixes (Werner).
13227 2005-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
13229 * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
13230 Emmentaler/Aybabtu.
13232 * GNUmakefile.in: fix lilypond-words path.
13234 * po/tr.po: update to 2.3.21
13236 * lily/new-fingering-engraver.cc (position_scripts): take priority
13237 from head position.
13239 * input/regression/finger-chords-order.ly (texidoc): new file.
13241 2005-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
13243 * make/ly-rules.make:
13244 * stepmake/aclocal.m4:
13245 * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
13247 * buildscripts/fixcc.py (rules): Leave space after operator.
13249 2005-03-14 Werner Lemberg <wl@gnu.org>
13251 * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
13252 top of the glyph with smooth curve.
13254 2005-03-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
13256 * Documentation/user/global.itely (Page layout): remove
13259 2005-03-13 Jürgen Reuter <reuter@ipd.uka.de>
13261 * input/regression/mensural-ligatures.ly: new file (with examples
13262 compiled by Pal Benko).
13264 * Documentation/user/instrument-notation.itely: Bugfix: yet some
13265 other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
13266 musicglyph access. Many small beautifications in ancient
13269 * input/test/divisiones.ly: fixed indentation; small
13272 * ly/engraver-init.ly: added FIXME comment
13274 * scripts/lilypond-book.py,
13275 Documentation/user/lilypond-book.itely: added music fragment
13276 option "packed" to lilypond-book
13278 * Documentation/user/instrument-notation.itely: Bugfix: added
13279 missing LedgerLineSpanner color setting in several places. Added
13280 music fragment option "packed" to VaticanaContext example.
13282 2005-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
13284 * scm/define-grobs.scm (all-grob-descriptions): switch off
13285 Hyphen_spanner::set_spacing_rods
13287 * lily/lyric-hyphen.cc (print): add padding between syllable and
13289 (print): shorten hyphen in tight situations (determine using
13292 * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
13295 2005-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
13297 * ly/titling-init.ly (bookTitleMarkup): Refinements.
13299 * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
13300 header/footer markings for regression-test.
13302 * scm/backend-library.scm (output-scopes, header-to-file): Move
13303 from framework-tex.scm.
13305 * scm/framework-ps.scm (output-framework)
13306 (output-preview-framework):
13307 * scm/framework-eps.scm (output-classic-framework)
13308 (output-framework): Use it. Fixes collated files.
13310 2005-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
13312 * input/sakura-sakura.ly:
13313 * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
13315 * buildscripts/guile-gnome.sh: Update.
13317 * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
13319 * mf/aybabtu.pe.in: Capitalize Aybabtu.
13321 2005-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
13323 * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
13324 culprit: always exit the loop if we find a rod, even if it has
13327 * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
13330 * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13331 $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
13333 * scm/output-svg.scm (dashed-line): new function body.
13335 * GNUmakefile.in: create .htaccess.
13337 2005-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
13339 * Documentation/topdocs/NEWS.tely (Top): Fix text example.
13341 2005-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
13343 * VERSION (PACKAGE_NAME): release 2.5.15
13345 * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
13347 * scm/framework-svg.scm (output-framework): put scaling in
13348 document header. Apply scaling only once.
13349 (output-framework): dump page size in px, not mm.
13351 * scm/lily-library.scm (modified-font-metric-font-scaling): rename
13354 * lily/paper-outputter-scheme.cc (LY_DEFINE):
13355 ly:outputter-output-scheme, new function.
13357 * scm/output-svg.scm (pango-description-to-svg-font): new function
13359 2005-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
13361 * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
13364 * input/typography-demo.ly: new file.
13366 2005-03-10 Jan Nieuwenhuizen <janneke@gnu.org>
13368 * Documentation/user/global.itely (File structure): Add markup blocks
13369 to toplevel expressions.
13370 (Multiple movements, Creating titles): Add markup blocks.
13372 * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
13373 <libc-extension.hh>).
13375 * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
13379 * kpath-guile: Nitpick run: buildscripts/fixcc.py.
13381 2005-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
13383 * lily/accidental.cc: special bboxes for natural.
13385 * mf/feta-toevallig.mf: make stems heavier.
13387 * lily/dynamic-text-spanner.cc (print): add bound padding for edge
13390 * mf/feta-klef.mf: revise.
13392 * mf/feta-schrift.mf: make thinning of accent less pronounced.
13394 * mf/feta-klef.mf: add rounded curve at top.
13395 make thinnib a little heavier.
13397 2005-03-10 Jan Nieuwenhuizen <janneke@gnu.org>
13399 * lily/parser.yy (book_body): Oops, allow \markup in \book too.
13401 * buildscripts/fixcc.py: New file.
13403 * input/regression/utf8.ly: Update Debian font description.
13405 2005-03-09 Jan Nieuwenhuizen <janneke@gnu.org>
13407 * stepmake/aclocal.m4: Fix test.
13409 2005-03-09 Graham Percival <gperlist@shaw.ca>
13411 * Documentation/user/invoking.itely: added Sebastino Vigna's
13412 docs for the --jail option.
13414 2005-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
13416 * lily/stem.cc (print): only produce stemlets if there are no
13417 noteheads on this stem.
13419 * lily/note-spacing.cc (stem_dir_correction): robustness fix:
13420 don't crash on stemlet (visible stem without heads).
13422 * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
13423 unbroken situations.
13425 * scm/output-lib.scm (center-invisible): new function.
13427 * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
13428 wishes to determine loose column space.
13430 * lily/font-config.cc (init_fontconfig): add
13431 fonts/{otf,type1,cff} to path.
13433 * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
13435 * mf/GNUmakefile (Module): install all fonts under otf/
13437 * scm/framework-ps.scm (Module): read fonts from fonts/extension,
13438 replace /fonts/otf/ by /ps/
13441 2005-03-09 Jan Nieuwenhuizen <janneke@gnu.org>
13443 * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
13445 * lily/book.cc (process): Oops, add score_.header_.
13447 * lily/paper-book.cc: Fold hearders, score and texts into scores_.
13449 * lily/parser.yy: Handle toplevel and book texts as score.
13451 * scm/page-layout.scm (default-page-make-stencil):
13452 Bugfix: (page-properties rename.
13454 * scm/backend-library.scm (ly:system): Typo.
13456 2005-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
13458 * stepmake/stepmake/executable-targets.make (installexe): don't
13459 strip installed executables
13461 * lily/font-select.cc (get_font_by_design_size): revert
13462 pango_description_string as well.
13464 * lily/system.cc (set_loose_columns): put loose column just left
13467 * lily/include/group-interface.hh (extract_grob_array): rename
13468 from Pointer_group_interface__extract_grobs
13470 * input/regression/ledger-line-minimum.ly (texidoc): new file.
13472 * lily/ledger-line-spanner.cc (set_spacing_rods): new
13473 function. Keep ledgered note heads at a minimum distance.
13474 Introduce minimum-length-fraction
13475 (print): introduce length-fraction property.
13477 2005-03-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
13479 * tex/GNUmakefile: remove latin1.enc rules.
13481 2005-03-08 Jan Nieuwenhuizen <janneke@gnu.org>
13483 * scm/titling.scm: Typo.
13485 * input/regression/score-text.ly: Really add.
13487 * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
13489 2005-03-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
13491 * lily/open-type-font-scheme.cc: new file.
13493 2005-03-08 Jan Nieuwenhuizen <janneke@gnu.org>
13495 * scm/titling.scm (layout-extract-page-properties): Rename from
13496 page-properties. Update callers.
13498 * lily/lexer.ll (Lily_lexer):
13499 * lily/parser.yy: Junk lyric_markup state.
13501 * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
13503 * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
13504 Add texts parameter.
13506 2005-03-07 Jan Nieuwenhuizen <janneke@gnu.org>
13508 * lily/lexer.ll (lyric_markup): New mode.
13509 (Lily_lexer::push_lyric_markup_state): New method.
13510 (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
13512 * lily/parser.yy (book_body):
13513 (toplevel_expression): Grok \markup texts.
13515 * lily/score-scheme.cc (ly:music-scorify):
13516 * scm/lily-library.scm (collect-music-for-book): Take texts
13519 * lily/score.cc (texts_): New member.
13521 * lily/paper-book.cc (systems): Format score texts.
13523 * score-text.ly: New file.
13525 * ttftool/SConscript:
13526 * kpath-guile/SConscript: New file.
13529 * SConstruct: Update.
13531 2005-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
13533 * VERSION (PACKAGE_NAME): release 2.5.14
13535 2005-03-07 Jan Nieuwenhuizen <janneke@gnu.org>
13537 * lily/main.cc: Add dummy xgettext markers.
13539 2005-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
13541 * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
13544 * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
13545 executable is < 40k
13547 * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
13550 2005-03-06 Jan Nieuwenhuizen <janneke@gnu.org>
13552 * flower/libc-extension.cc:
13553 * flower/include/libc-extension.hh: [Open]BSD simply cast
13554 cookie/funopen declarations.
13556 * stepmake/aclocal.m4: Check for libkpathsea.so.
13558 * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
13561 2005-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
13563 * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
13564 (open_library): alternative for static library.
13566 2005-03-06 Jan Nieuwenhuizen <janneke@gnu.org>
13568 * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
13570 * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
13572 Drop run-time dependency on teTeX.
13574 * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
13576 * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
13577 KPATHSEA_LIBS in LIBS.
13578 (STEPMAKE_DLOPEN): New function.
13580 * lily/font-config.cc (init_fontconfig): Use dir for directory,
13583 * flower/file-path.cc (directories): Rename from paths, as this
13584 return an array of directories (a single path).
13586 2005-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
13588 * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
13590 * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
13591 new ly:kpathsea-find-file
13593 * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
13595 * kpath-guile/GNUmakefile: new file
13597 * buildscripts/gen-emmentaler-scripts.py (i): generate
13598 emmentaler-X.fontname as well.
13600 * buildscripts/ps-embed-cff.py: new script
13602 * scm/lily-library.scm: remove ps-embed-cff.
13604 * scm/framework-ps.scm (write-preamble): don't use kpathsea for
13607 * scm/font.scm (add-music-fonts): load dynamics/numbers through
13608 fontconfig as well.
13610 * lily/font-config.cc (init_fontconfig): add cff/ too.
13612 * ly/generate-embedded-cff.ly: capitalize.
13614 * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
13615 so as to register the pango font.
13617 * lily/font-config.cc (init_fontconfig): add
13618 prefix/{otf,type1,mf/out} to fontconfig path.
13620 * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
13623 * configure.in (gui_b): remove ec mftrace check
13625 * config.hh.in: use lilypond-Major.Minor as data directory.
13627 * scm/framework-ps.scm (dump-page): use output-units for landscape.
13629 * buildscripts/gen-emmentaler-scripts.py (i): lower case file
13632 2005-03-06 Jan Nieuwenhuizen <janneke@gnu.org>
13634 * lily/main.cc (do_chroot_jail): Small cleanups. Avoid constant
13637 * flower/libc-extension.cc:
13638 * flower/include/libc-extension.hh: [Open]BSD fixes for
13639 cookie/funopen declarations.
13641 2005-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
13643 * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13646 * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13649 * scm/define-markup-commands.scm (fontsize): new markup
13650 command. Also set baseline-skip
13652 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13654 * lily/main.cc (do_chroot_jail): paranoia security for webserver
13657 2005-03-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
13659 * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13661 * lily/pdf.cc: remove PDF related files
13663 2005-03-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
13665 * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13668 2005-03-05 Graham Percival <gperlist@shaw.ca>
13670 * Documentation/user/advanced-notation.itely: first draft
13673 * Documentation/user/global.itely: fixed (sub)section
13676 2005-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
13678 * cygwin/mknetrel (extras): Bufix (Bertalan).
13680 * Documentation/user/basic-notation.itely (Chords): @ref fix.
13681 * Documentation/user/instrument-notation.itely (Introducing chord
13682 names): Compile fix: must have unique name.
13684 2005-03-02 Graham Percival <gperlist@shaw.ca>
13686 * Documentation/user/instrument-notation.itely: reorg.
13688 2005-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
13690 * scm/output-gnome.scm:
13691 * scm/output-svg.scm: Fix font scaling.
13693 2005-03-01 Jan Nieuwenhuizen <janneke@gnu.org>
13695 * ly/titling-init.ly (tagline): Use Engraving. Add comment about
13696 what link to use best.
13698 * Documentation/user/instrument-notation.itely (Ancient accidentals):
13699 * Documentation/user/tutorial.itely (Automatic and manual beams):
13702 * lily/tweak-registration.cc (replace_grob_tweak): New function.
13703 * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13704 * scm/framework-gnome.scm (tweak): Use it.
13706 2005-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
13708 * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13710 * scm/output-ps.scm (white-text): reinstate white-text
13712 2005-03-01 Jan Nieuwenhuizen <janneke@gnu.org>
13714 * scm/output-ps.scm (offset-add): Remove.
13716 * scm/lily-library.scm (offset-flip-y): New function.
13717 * scm/framework-gnome.scm (tweak): Use it.
13719 * scm/output-gnome.scm (grob-cause): Add parameter.
13721 * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13722 * scm/output-ps.scm (url-link): Move.
13723 (white-text): Warn user about brokenness.
13725 * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13728 2005-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
13730 * lily/slash-repeat-engraver.cc (try_music): always make slashes
13731 if body length smaller than measure length.
13733 * scm/define-markup-commands.scm (with-url): oops. use Y extent
13736 * ly/titling-init.ly (tagline): put default tagline in \paper
13738 2005-03-01 Jan Nieuwenhuizen <janneke@gnu.org>
13741 * lily/pdf.cc (Pdf_file): Use more generic error messages.
13743 * scm/lily-library.scm (version-not-seen-message): New function.
13744 * ly/init.ly: Use it.
13746 * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13749 * scripts/lilypond-book.py (do_process_cmd): Do not lump
13750 whitespace with l10n message.
13752 * scm/framework-tex.scm (convert-to-ps):
13753 (convert-to-dvi): Do not use overly specific l10n messages.
13755 * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13757 * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13758 merge stderr with stdout.
13760 2005-03-01 Jan Nieuwenhuizen <janneke@gnu.org>
13762 * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13765 2005-02-29 Graham Percival <gperlist@shaw.ca>
13767 * Documentation/user/instrument-notation.teily: moved
13768 \arpeggio to Basic.
13770 * Documentation/user/advanced-notation.itely: Articulation to
13771 Basic, a bunch of stuff from Basic moved to Advanced.
13773 * Documentation/user/basic.itely: swapped various sections,
13776 2005-02-28 Jan Nieuwenhuizen <janneke@gnu.org>
13778 * flower/memory-stream.cc:
13779 * flower/libc-extension.cc: Remove obsolete #undefs.
13781 * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13784 2005-02-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
13786 * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13789 * VERSION (PACKAGE_NAME): release 2.5.13
13791 * GNUmakefile.in (web-ext): don't ship ps.gz
13793 * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13796 2005-02-28 Jan Nieuwenhuizen <janneke@gnu.org>
13798 * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13799 without libintl. Now it compiles too.
13801 2005-02-28 Graham Percival <gperlist@shaw.ca>
13803 * Documentation/user/basic-notation.itely,
13804 instument-notation.itely, advanced-notation.itely:
13805 split up contents of notation.itely.
13807 * Documentation/user/notation.itely: file removed.
13809 * Documentation/user/invoking.itely, converters.itely:
13810 moved convert-ly info to invoking.itely.
13812 * Documentation/user/global.itely, changing-defaults.itely,
13813 sound-output.itexi: moved global settings, file layout, and
13814 sound into global.itely.
13816 * Documentation/user/sound-output.itexi: file removed.
13818 * Documentation/user/lilypond.tely: removed links to
13819 notation.itely and sound.itely.
13821 2005-02-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
13823 * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13825 * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13827 * THANKS: add sponsor.
13829 * scm/define-markup-commands.scm (with-url): new markup command.
13831 * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13834 * scm/output-tex.scm (url-link): stub.
13836 * scm/output-ps.scm (url-link): new function.
13838 * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13839 ly:set-point-and-click
13841 2005-02-27 Jan Nieuwenhuizen <janneke@gnu.org>
13843 * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13844 based on pdf-viewer setting.
13846 * scm/framework-ps.scm (write-preamble): Find and set preferred
13849 2005-02-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
13851 * Documentation/user/point-and-click.itely: update for PDF point &
13854 * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13855 editors based on EDITOR setting.
13857 2005-02-27 Jan Nieuwenhuizen <janneke@gnu.org>
13859 * scm/*: Oops, more grand 2005 replace bits.
13861 2005-02-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
13863 * ps/music-drawing-routines.ps: new routine: insert PDF mark
13865 * scm/output-ps.scm (grob-cause): point & click support for
13868 2005-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
13870 * lily/input-scheme.cc (LY_DEFINE): rename to
13871 ly:input-file-line-column
13873 2005-02-26 Graham Percival <gperlist@shaw.ca>
13875 * Documentation/user/examples.itely: small fix from Steve Doonan.
13877 * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13879 * THANKS: added Yuval Harel.
13881 * Documentation/user/{various}: inserted two spaces after a period.
13883 * Documentation/user/lilypond.tely: added framework for reorg.
13885 * Documentation/user/basic-notation.itely, instrument-notation.itely,
13886 advanced-notation.itely, global.itely: new files, placeholder for
13889 2005-02-26 Yuval Harel <yuvalh@hotpop.com>
13891 * Documentation/user/notation.itely: revamped Polyphony section
13893 2005-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
13895 * Documentation/user/lilypond-book.itely (Music fragment options):
13898 * Documentation/user/changing-defaults.itely (Text encoding): add
13899 fontload option to utf8 include
13901 * scripts/lilypond-book.py (compose_ly): add fontload option
13903 * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13904 force-eps-font-include option.
13906 * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13909 * Documentation/user/invoking.itely (Editor support): remove
13910 lilypond-latex section.
13912 * scripts/lilypond-latex.py (Module): remove script.
13914 * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13917 * lily/main.cc: remove -m, --no-layout
13919 * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13920 to define. We don't want to override fprintf everywhere.
13922 2005-02-26 Jan Nieuwenhuizen <janneke@gnu.org>
13924 * cygwin/lilypond.hint:
13925 * cygwin/README.in: Update dependencies.
13927 * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13928 Bugfix: do not pollute CPPFLAGS, LIBS.
13930 * cygwin/mknetrel (extras): Cross compile fixes.
13934 * ttftool/ps.c: #include libc-extension.hh
13936 * flower/include/libc-extension.hh:
13937 * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13938 wrapper using funopen.
13939 (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13940 handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13943 * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13944 (AC_CHECK_HEADERS): Add libio.h
13946 * scripts/convert-ly.py: Uniformize, internationalize.
13947 (2.5.2): Remove fatal encoding rule.
13948 (2.5.13): Handle latin1 encoding gracefully.
13950 2005-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
13952 * HACKING: Fix line breaks.
13954 2005-02-23 Werner Lemberg <wl@gnu.org>
13956 * mf/graycx.mf, mf/graylj.mf: Removed. Any decent TeX distribution
13957 contains those two files.
13959 2005-02-21 Werner Lemberg <wl@gnu.org>
13961 * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13962 to improve overlap removal process.
13964 * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13965 left and right ending. This ensures better overlapping.
13966 Update all callers.
13967 ("lineprall"): Don't use draw_gridline to get better overlapping.
13969 2005-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
13971 * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13973 * Documentation/topdocs/NEWS.tely (Top): oops.
13975 2005-02-21 Pedro Kroger <kroeger@pedrokroeger.net>
13977 * HACKING: new file.
13979 * input/regression/utf8.ly (portuguese): added a portuguese example
13980 to show latin1 accents.
13982 2005-02-21 Pal Benko <benkop@freestart.hu>
13984 * lily/mensural-ligature-engraver.cc:
13985 * lily/mensural-ligature.cc:
13986 * lily/include/mensural-ligature.hh: new algorithm implemented
13988 * scm/define-grob-properties.scm: join-left killed (add-join may
13989 be used); join-left-amount changed to join-right-amount
13991 2005-02-21 Graham Percival <gperlist@shaw.ca>
13993 * Documentation/user/notation.itely: small but urgent fix.
13995 2005-02-21 Jürgen Reuter <reuter@ipd.uka.de>
13997 * lily/duration-scheme.cc: bugfix: correct parameters to
14000 * THANKS: added Pal.
14002 * Documentation/user/notation.itely: bugfix: unTeXified
14003 $\\backslash$. Bugfix: yet another glyph renaming victim:
14004 "timesig.*x/y" -> "timesig.*xy".
14006 2005-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
14008 * VERSION (PACKAGE_NAME): release 2.5.12
14010 2005-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
14012 * ly/engraver-init.ly: set tieWaitForNote to #t by default
14014 * configure.in (gui_b): bump GUILE requirement to 1.6.5
14016 * Documentation/topdocs/NEWS.tely: add inputfileref macro.
14018 * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
14020 2005-02-20 Jan Nieuwenhuizen <janneke@gnu.org>
14022 * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
14025 * input/regression/stanza-number.ly:
14026 * input/regression/utf8.ly (hebrew): Use addlyrics. Update.
14028 * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
14030 2005-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
14032 * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
14033 NEWS. Refer to website for older news.
14035 * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
14036 .HTML. This should be done for specific servers only.
14038 * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
14039 .ly image examples.
14041 * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
14044 * scm/define-context-properties.scm
14045 (all-user-translation-properties): add tieWaitForNote
14047 * scm/define-grobs.scm (all-grob-descriptions): add
14048 Tie_column::before_line_breaking
14050 * lily/tie.cc (get_column_rank): new function
14052 * lily/tie-column.cc (before_line_breaking): new function.
14053 (werner_directions): take into account ties that start on
14056 * lily/score-engraver.cc (set_columns): move add_column() so we
14057 have column rank available.
14059 * lily/tie.cc (get_column_rank): new function.
14061 * input/regression/utf8.ly (japanese): add japanese lyrics.
14063 * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
14065 * THANKS: add Steve D
14067 * ttftool/*.c: add TTF -> Type42 conversion library. Based on
14068 Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
14070 2005-02-20 Tatsuya Ono <tats_ono@infoseek.jp>
14072 * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
14073 to show harmonic notes
14074 * scm/define-markup-commands.scm: in \markup-by-number
14075 "dots-dot" -> "dots.dot" to show dotted notes
14077 2005-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
14079 * flower/include/memory-stream.hh (class Memory_out_stream): new file.
14081 * flower/memory-stream.cc (writer): new file.
14083 * configure.in: add endian test.
14085 2005-02-19 Jürgen Reuter <reuter@ipd.uka.de>
14087 * Documentation/user/examples.itely: small
14088 simplification/beautification
14090 * Documentation/user/notation.ietly: bugfix: fixed many artefacts
14091 from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
14094 * lily/mensural-ligature.cc: bugfix: another few victims of the
14095 "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
14097 * ly/gregorian-init.ly: commit some experimental code for hi-level
14098 ligature input language lying around here for several months.
14100 * lily/mensural-ligature-engraver.cc: bugfix: another victim of
14101 the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
14103 * lily/vaticana-ligature-engraver.cc: bugfix: another few
14104 "x-y-z"->"x.y.s-z" fixes.
14106 2005-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
14108 * scm/framework-pdf.scm (scm): new file
14110 * lily/include/pdf.hh (class Pdf_file): new file.
14112 * lily/pdf.cc (write_trailer): new file.
14114 2005-02-18 Erlend Aasland <erlenda@gmail.com>
14116 * input/regression/color.ly: new file
14118 * lily/stencil.cc (interpret_stencil_expression):
14119 when a color expression is encountered: save current color,
14120 process the rest of the expression, and restore previous color.
14122 * lily/system.cc (get_line): check all grobs for color property and
14123 prepare the stencil scheme expressions for further processing.
14126 * scm/define-grob-properties.scm: introduce the color property.
14128 * scm/output-lib.scm: color helper functions.
14130 * scm/output-ps.scm: introduce setcolor/resetcolor.
14132 2005-02-07 Erik Sandberg <ersa9195@student.uu.se>
14134 * ly/*.ly, input/regression/*.ly: Added missing \version
14135 statements in some files.
14137 2005-02-15 Graham Percival <gperlist@shaw.ca>
14139 * Documentation/user/notation.itely: minor editing.
14141 * Documentation/user/converters.itely: updated convert-ly bugs.
14143 * Documentation/user/lilypond-book.itely: add info about using
14144 feta characters in latex.
14146 2005-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
14148 * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
14150 2005-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
14152 * scm/define-grob-properties.scm (all-user-grob-properties):
14153 removed 'dashed property.
14155 2005-02-13 Nicolas Sceaux <nicolas.sceaux@free.fr>
14157 * scm/lily.scm (define-safe-public): new macro for defining
14158 variables that can be used in --safe mode. Use it in *.scm
14159 instead of manually setting safe-objects in safe-lily.scm.
14161 2005-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
14163 * lily/slur.cc: Slur-dash patch by Bertalan.
14165 * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
14167 * stepmake/bin/add-html-footer.py (do_file): do i18n only once.
14169 2005-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
14171 * stepmake/aclocal.m4: teTeX-3.0 inimf fix. Comment-out.
14173 2005-02-09 Jan Nieuwenhuizen <janneke@gnu.org>
14175 * mf/GNUmakefile: teTeX-3.0 install fix.
14177 * Cygwin patch from Bertalan.
14179 * stepmake/stepmake/metafont-rules.make: Remove bashism.
14181 2005-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
14184 * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
14186 * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc. Add
14187 2.0.x compatibility.
14189 2005-02-08 Werner Lemberg <wl@gnu.org>
14191 * mf/feta-din-code.mf: Format; clean up code.
14192 Replace `---' with `--' plus explicit path directions.
14193 (linethickness#, stafflinethickness#): Remove.
14194 ("dynamic f"): Replace `draw' with `draw_rounded_block'.
14195 ("dynamic s"): Improve shape.
14196 ("dynamic p"): Improve shape.
14197 Replace `draw' with better outline approximation.
14198 ("dynamic r"): Improve shape.
14199 Don't call `fill' and `draw' at the same time.
14201 2005-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
14203 * SConstruct (symlink):
14204 * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
14205 build fix: add enc symlink.
14207 * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
14209 Support for DESTDIR besides prefix=/foo
14211 * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
14213 * stepmake/stepmake/*.make:
14215 * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
14217 * config.make.in (prefix): Remove broken $(DESTDIR) hack.
14219 * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
14220 mawk in fontforge (date) test.
14222 2005-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
14224 * scm/font.scm (make-century-schoolbook-tree): add NCS as
14225 font-family=roman. Add Luxi Sans as sans
14227 2005-02-07 Graham Percival <gperlist@shaw.ca>
14229 * Documentation/user/notation.itely: add warning about
14230 percent repeats and Voice contexts.
14232 * Documentation/user/lilypond-book.itely: clarified the
14233 necessity of dvips -u arguments.
14235 2005-02-07 Erik Sandberg <ersa9195@student.uu.se>
14237 * THANKS: Added a bunch of bug hunters.
14239 2005-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
14241 * scm/framework-ps.scm (output-preview-framework): bugfix.
14243 * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
14244 o/ for chord modifier..
14246 * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
14248 * lily/drum-note-performer.cc: remove unused (thanks Michael
14251 2005-02-06 Jan Nieuwenhuizen <janneke@gnu.org>
14253 * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
14255 * ly/titling-init.ly: Do not also print intstrument in header on
14256 first page. Do not print page number on first and only page.
14258 2005-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
14260 * input/regression/*.ly: remove old-relative everywhere
14262 * lily/music-sequence.cc (simultaneous_relative_callback): do
14263 what-if analysis on copy, not on original. Fixes old-relative
14266 * scm/backend-library.scm (postscript->png): space before
14269 2005-02-05 Werner Lemberg <wl@gnu.org>
14271 * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
14274 * mf/feta-alphabet.mf: Define `staffsize#'.
14275 Include `feta-params.mf'.
14276 s/staffheight/design_size/.
14278 * mf/feta-alphabet??.mf: s/staffheight/design_size/.
14280 * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
14282 * mf/feta-nummer-code.mf: Reformatted.
14283 (draw_six): Use outline intersection to avoid a self-intersecting
14285 ("Numeral comma"): Fix serious outline glitches. This slightly
14286 changes the glyph shape.
14287 ("Numeral dash"): Use `draw_rounded_block'.
14288 ("Numeral dot"): Use `drawdot'.
14289 ("Numeral 1"): Assure identical tangent directions for the
14290 intersection points of paths. The glyph shape improvement is only
14291 visible at very high magnifications.
14292 ("Numeral 2"): Use `solve' macro to make the lower right part of
14293 the glyph outline touch the x axis exactly. This changes the
14295 Minor fixes for better overlap removal support.
14296 ("Numeral 4"): Make lefter corner `rounder'.
14297 ("Numeral 5"): Assure identical tangent directions for the
14298 intersection points of paths. This improves the glyph shape at
14299 high magnifications.
14300 ("Numeral 7"): Use `solve' macro to make the upper right part of
14301 the glyph outline touch the metrics box exactly. This changes the
14303 Avoid corner in the upper left part of the glyph (causing a minor
14306 * mf/feta-ital-*.mf: Removed. Unused.
14308 2005-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
14310 * VERSION (PATCH_LEVEL): release 2.5.11
14312 * input/regression/fill-line-test.ly: new file.
14314 * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
14315 emmentaler name, eg. emmentaler-23.
14317 2005-02-04 Christian Hitz <chhitz@gmx.net>
14319 * scm/scm/define-markup-commands.scm (fill-line): rework for better
14320 alignment with centered texts
14322 * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
14325 2005-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
14327 * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
14329 * lily/note-column.cc (translate_rests): call flush_extent_cache()
14330 of parents when translating rests. Fixes: c-chord-rest.ly
14332 * lily/include/dimension-cache.hh (struct Dimension_cache): add
14333 dimension_callback_ member.
14335 * lily/grob.cc (flush_extent_cache): new function. Force recompute
14338 2005-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
14340 * all but lily/*: The grand 2004/2005 replace.
14342 2005-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
14344 * lily/*: add space after ,
14346 * scm/music-functions.scm (has-request-chord): don't use
14347 ly:music-name anywhere. Fixes <<\\>> notation.
14349 * scm/define-markup-commands.scm (box): use font-size for
14350 padding. Fixes boxed-rehearsal-marks.ly
14352 * lily/parser.yy (assignment_id): allow LYRICS_STRING as
14353 identifier definition too, so foo = \lyrics { ... } bar = #1
14354 doesn't complain about "bar" being LYRICS_STRING.
14356 * lily/paper-def.cc (find_pango_font): new routine; Store
14357 pango_fonts in hash tab too. This is necessary for retrieving
14358 Pango_fonts::physical_font_tab() later on.
14360 * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
14361 crash if psname is null.
14363 * lily/lily-guile.cc (ly_hash2alist): new function
14365 * Documentation/user/changing-defaults.itely (Text encoding):
14368 * lily/pango-font.cc (physical_font_tab): new member. Store PSname
14369 -> font_filename mapping.
14371 * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
14372 ly_pango_font_physical_fonts
14374 * scm/framework-ps.scm (supplies-or-needs): extract names from
14375 physical Pango_fonts.
14377 * utf8.ly: new file.
14379 2005-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
14381 * Documentation/user/changing-defaults.itely (Page layout): add
14382 doco about systemSeparatorMarkup.
14384 * scm/page-layout.scm (default-page-make-stencil): add-to-page
14386 (default-page-make-stencil): insert system separators.
14388 * scm/define-markup-commands.scm (hcenter): add
14391 2005-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
14393 * scm/output-ps.scm (ez-ball): reinstate ez notation.
14395 2005-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
14397 * lily/main.cc: Spell backend consistently. Sort options.
14399 2005-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
14401 * scripts/lilypond-book.py (Module): revert @include.
14403 2005-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
14405 * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
14406 Bugfix: @include .tex (not .texi). Small cleanups.
14408 * stepmake/bin/add-html-footer.py (i18n): New function.
14410 2005-01-31 Werner Lemberg <wl@gnu.org>
14412 * mf/feta-nummer.mf: Removed. Unused.
14414 2005-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
14416 * lily/ : 2004 -> 2005 s&r
14418 * scm/file-cache.scm (cached-file-contents): add file. Read each
14421 * scm/font.scm (add-pango-fonts): change order. Medium weight is
14424 * VERSION: release 2.5.10
14426 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
14428 * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
14430 * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
14431 that both X and Y extents of bbox are non-nil.
14433 2005-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
14435 * scm/chord-name.scm (alteration->text-accidental-markup): change
14438 * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
14440 * scm/framework-ps.scm (dump-stencil-as-EPS): new function
14442 * Documentation/user/invoking.itely (Invoking lilypond): add note
14445 * scm/framework-eps.scm: new file: create per-system/per-page EPS
14446 files for inclusion in lilypond-book document.
14448 * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
14450 * input/tutorial/lbook-texi-test.texi: new file.
14452 * scm/safe-lily.scm (safe-objects): add
14453 {begin,end}-of-line-(in)?visible as safe.
14455 2005-01-30 Graham Percival <gperlist@shaw.ca>
14457 * Documentation/user/changing-defaults.itely: fixed example
14460 2005-01-29 Graham Percival <gperlist@shaw.ca>
14462 * lily/main.cc: fix info about -o=FILE.
14464 2005-01-29 Werner Lemberg <wl@gnu.org>
14466 * mf/feta-toevallig.mf ("Natural"): Completely changed the
14467 construction to assure smooth transition from straight to curved
14470 2005-01-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
14472 * lily/stencil.cc (moved_to_edge): don't halt on adding empty
14475 * ps/lilyponddefs.ps: add start-page, start-system doesn't
14476 translate to top of page. Fixes alignment problems of
14477 lilypond-generated EPS files.
14479 2005-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
14481 * scm/part-combiner.scm (analyse-spanner-states): trigger on
14482 crescendo-end as well, since Decrescendo maybe ended with Stop
14483 Crescendo.). Fixes: partcombine-diminuendo.ly
14485 * scm/script.scm (default-script-alist): swap portato symbols.
14487 * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
14489 * lily/paper-outputter-scheme.cc (LY_DEFINE):
14490 ly:outputter-port. New function.
14492 * scm/framework-ps.scm (output-classic-framework): dump a
14494 (output-classic-framework): dump multiple systems on an "infinite"
14495 page EPS including fonts.
14497 * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
14498 .eps files for both texi and tex formats. Use PNG coming from
14501 2005-01-28 Graham Percival <gperlist@shaw.ca>
14503 * Docuemntation/user/invoking.itely: fix info about -o=FILE.
14505 * scripts/lilypond-latex.py: fix info about -o=FILE.
14507 2005-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
14509 * ly/generate-embedded-cff.ly: write .cff.ps files.
14511 * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
14513 * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
14514 $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
14516 2005-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
14518 * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
14520 2005-01-28 Werner Lemberg <wl@gnu.org>
14522 * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
14524 (draw_bulb): Improved.
14526 * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
14528 (draw_pedal_P): Use soft_end_penstroke.
14529 (draw_pedal_d): Use soft_start_penstroke.
14531 * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
14533 ("Varied Coda"): Move some points to avoid fontforge warnings. This
14534 doesn't change the glyph shape.
14536 * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
14537 changing the shape) to avoid fontforge warnings.
14539 * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
14540 soft_end_penstroke and fix glyph shape.
14542 2005-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
14544 * lily/*.cc: Scheme deprecation of SCM_VECTOR_*
14546 2005-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
14548 * scm/define-markup-commands.scm (line): filter out empty stencils
14551 * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
14554 2005-01-27 Graham Percival <gperlist@shaw.ca>
14556 * Documentation/user/notation.itely: added info about what
14557 \voiceFoo does. Also rewrote warning about marks at
14560 * Documentation/user/changing-defaults.itely: added info
14561 about putting dynamics in parenthesis and brackets.
14563 2005-01-27 Werner Lemberg <wl@gnu.org>
14565 * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
14567 2005-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
14569 * mf/feta-schrift.mf: reverse u and d portato. Fixes:
14570 portato-direction.ly
14572 * lily/beam.cc (consider_auto_knees): add beam height to
14573 threshold. Fixes: knee-multiple-beam.ly
14575 * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
14576 pedal line spanners. Fixes: instrument-center-pedal.ly
14578 * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
14579 if encountering barline. Fixes: auto-beam-repeat.ly
14581 2005-01-26 Werner Lemberg <wl@gnu.org>
14583 * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
14586 * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
14587 with inflections for the 1/2 sharp glyph.
14589 * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
14590 connection between `t' and `r'.
14591 Unify bulb with the rest of `r' to avoid grazing outlines which
14592 confuses the overlap removal algorithm of fontforge.
14594 * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
14596 (draw_cross): Fix shape to have uniform thickness in corners.
14598 * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
14599 to avoid an uneven number of self-intersections; this confuses
14601 Fix a slight bug in the shape at left bottom (which is visible only
14602 at high magnifications).
14603 `Center' the stem horizontally to avoid overlapping.
14605 2005-01-24 Werner Lemberg <wl@gnu.org>
14607 * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
14609 (fet_begingroup): Save group name in string `feta_group'.
14610 (fet_endgroup): Updated.
14611 (fet_beginchar): Emit `glyph_name' special for mf2pt1.
14613 * mf/feta-bolletjes.mf: s/p/pat/ for paths.
14615 * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
14618 2005-01-24 Graham Percival <gperlist@shaw.ca>
14620 * Documentation/user/notation.itely: really minor editing.
14622 2005-01-22 Graham Percival <gperlist@shaw.ca>
14624 * Documentation/user/examples.itely: minor editing.
14626 * Documentation/user/changing-defaults.itely: minor editing.
14628 * Documentation/user/notation.itely: clarified info on polyphony
14631 2005-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
14633 * scm/output-gnome.scm:
14634 * scm/output-svg.scm:
14635 * scm/lily-library.scm (font-name-style): Update font name
14636 kludging for fontconfig use.
14638 2005-01-20 Erlend Aasland <erlenda@gmail.com>
14640 * scm/define-markup-commands.scm: Document right-align and
14641 larger markup commands. Remove "TODO" from the topmost comment
14642 "each markup function should have a doc string." More consistent
14645 2005-01-22 Graham Percival <gperlist@shaw.ca>
14647 * Documentation/user/changing-defaults: removed info about
14648 copyright symbol, since it's likely to change soon.
14649 Added info about betweensystemspace.
14651 * Documentation/user/notation.itely: minor fixes.
14653 * Documentation/user/lilypond.tely,
14654 Documentation/user/music-glossary.tely: changed copyright
14655 date to 2005 instead of 2004.
14657 * input/test/volta-chord-names.ly: added old example back.
14659 2005-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
14661 * mf/feta-beugel.mf: use design size 20 (not 15).
14663 * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14664 change name to aybabtu completely
14666 2005-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
14668 * buildscripts/gen-emmentaler-scripts.py (outdir): add
14669 design_size to fontname
14671 2005-01-19 Werner Lemberg <wl@gnu.org>
14673 * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14674 mf/feta-schrift.mf: s/p/pat/ if a path variable.
14676 * mf/feta-autometric.mf (set_char_box): Add code which emits
14677 specials for mf2pt1 if run with metapost.
14678 (to_bp): New macro for mf2pt1.
14680 2005-01-18 Graham Percival <gperlist@shaw.ca>
14682 * Documentation/user/changing-defaults: added info on
14683 creating a copyright symbol.
14685 2005-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
14687 * VERSION: release 2.5.9
14689 2005-01-18 Erlend Aasland <erlenda@gmail.com>
14691 * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14693 * Documentation/user/notation.itely: Document
14694 score-override-auto-beam-setting Fix documentation for
14695 revert-auto-beam-setting.
14697 2005-01-18 Werner Lemberg <wl@gnu.org>
14699 * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14700 (procset): New function to define a procset resource.
14701 (ps-embed-pfa): New function to define a font resource.
14702 (setup): New function to define a `Setup' environment.
14703 (preamble): Use new functions.
14705 * ps/lilypond.defs (init-lilypond-parameters): New function to
14706 get rid of directly executed PS code. Used in scm/framework-ps.scm.
14708 2005-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
14710 * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14712 2005-01-17 Erlend Aasland <erlenda@gmail.com>
14714 * scm/define-markup-commands.scm: Change number->markletter-string
14715 to take two arguments (vector number). Add number->mark-alphabet-vector
14716 and markalphabet markup command.
14718 * scm/translation-functions.scm: Add format-mark-box-alphabet,
14719 format-mark-alphabet, format-mark-box-barnumbers and
14720 format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14722 2005-01-17 Graham Percival <gperlist@shaw.ca>
14724 * Documentation/user/examples.itely: add SATB automatic piano
14725 reduction template.
14727 * Documentation/user/notation.itely: added info about changing
14728 partcombine texts. Also adds examples of alternate lyrics.
14730 * Documentation/user/changing-defaults.itely: added warning
14731 about \RemoveEmptyStaffContext overriding previous changes.
14733 2005-01-17 Werner Lemberg <wl@gnu.org>
14735 * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14738 2005-01-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
14740 * python/lilylib.py (make_ps_images): don't do final showpage for
14741 multi-page documents.
14743 * VERSION (MY_PATCH_LEVEL): release 2.5.8
14745 2005-01-16 Graham Percival <gperlist@shaw.ca>
14747 * Documentation/user/lilypond.tely: changed order of appendices;
14748 unified index should be last.
14750 * Documentation/user/notation.itely: add example of key signatures
14751 and info about Staff.printKeyCancellation.
14753 2005-01-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
14755 * lily/include/repeated-music.hh (class Repeated_music): change
14756 into "namespace" class.
14758 * lily/event.cc: remove Key_change_event.
14760 * lily/include/transposed-music.hh (class Transposed_music): remove.
14762 * lily/transposed-music.cc: remove
14764 * lily/include/relative-music.hh: remove.
14766 * lily/include/music-sequence.hh (struct Music_sequence): change
14767 into "namespace" class.
14769 * lily/untransposable-music.cc (Module): remove
14771 * lily/include/un-relativable-music.hh (Module): remove
14773 * lily/include/untransposable-music.hh (Module): remove
14775 * lily/include/music-list.hh (Module): remove file
14777 * lily/un-relativable-music.cc: remove file.
14779 2005-01-14 Jan Nieuwenhuizen <janneke@gnu.org>
14781 * lily/parser.yy: Compile fix.
14783 2005-01-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
14785 * lily/include/music.hh (class Music): unvirtualize transpose().
14787 * lily/sequential-music.cc: remove file.
14789 * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14791 * lily/slur-scoring.cc (get_best_curve): only switch on
14792 DEBUG_SLUR_SCORING for non NDEBUG builds.
14794 * lily/include/music.hh (class Music): replace Music::start_mom()
14795 by start-callback property
14797 * lily/include/grace-music.hh: remove file.
14799 * lily/stem.cc (height): robustness fix.
14801 * lily/time-scaled-music.cc: remove file.
14803 * lily/include/music.hh (class Music): include SCM init argument.
14804 (class Music): replace Music::get_length() virtual by
14805 length-callback property everywhere.
14807 * scripts/convert-ly.py (conv): add # to \property scalar value.
14809 * mf/GNUmakefile: don't install *list.ly
14811 2005-01-14 Jan Nieuwenhuizen <janneke@gnu.org>
14813 * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14815 2005-01-12 Werner Lemberg <wl@gnu.org>
14817 This patch addresses the following problems in the feta sources
14818 files which contribute to the fetaXX fonts.
14820 . Many fixes for rasterization at low resolutions (consistent use of
14821 `vround' and `hround', integer shift values for paths, applying
14822 `eps' for mirrored paths, use of `define_whole_pixels' and
14823 friends, etc.) -- while this probably looks like a waste of time
14824 it has revealed deficiencies in some glyph shapes. See comment at
14825 the end of feta-params.mf how vertical symmetry is achieved.
14827 . The `---' operator has been replaced everywhere with `--'; this
14828 both improves and considerably reduces the font size after
14829 conversion with mf2pt1.
14831 These change aren't explicitly mentioned below since virtually all
14832 glyphs are affected.
14834 Other notable differences:
14836 . Glyphs from feta-accordion.mf now have charboxes around the
14839 . Fixed incorrect charbox for `accDot'.
14841 . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14843 . Fixed position of the bow in the `upprall' glyph and its siblings.
14845 . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14846 dependent on the staff line thickness to avoid touching the middle
14847 staff line at smaller sizes.
14849 . Largely extended output for feta-testXX: Where useful, glyphs
14850 are shown both between and on staff lines.
14853 * mf/feta-params.mf (staff_space_rounded,
14854 stafflinethickness_rounded, linethickness_rounded,
14855 ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14856 Update all code which uses them where appropriate.
14857 (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14858 New variables used to control rasterization at low resolutions. Set
14859 to zero if feta code is processed with metapost.
14861 * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14862 (draw_rounded_block, draw_square_block): Updated to use `--' only.
14863 (flare_path): Updated.
14864 Make it work with `filldraw' (but only circular pens).
14865 (hfloor, vfloor, hceiling, vceiling): New macros.
14867 * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14868 Use `draw' again in mf mode to have good pixel dropout control.
14869 Fix intersection points of horizontal lines with circle.
14870 ("accDot"): Fix parameters for set_char_box.
14871 ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14874 * mf/feta-banier.mf: Updated.
14876 * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14878 (undraw_inside_ellipse): Remove `center' argument. Update all
14880 (draw_brevis): New macro, called by "Brevis notehead".
14881 (draw_whole_triangle_head): New macro, called by "Whole
14883 (draw_small_triangle_head): Use `filldraw'.
14885 * mf/feta-eindelijk.mf: Remove useless global group.
14888 * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14891 * mf/feta-pendaal.mf: Updated.
14893 * mf/feta-puntje.mf: Updated.
14895 * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14897 ("Flageolet"): Use `draw' again in mf mode to have good pixel
14899 ("Varied Coda"): Use `draw_block'.
14900 (draw_comma): Fix typo.
14901 (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14902 pixel dropout control.
14904 * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14907 * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14910 * mf/feta-toevallig.mf (remember_pic): New variable, used for
14912 (draw_meta_sharp): Much simplified.
14913 ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14915 * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14917 2005-01-13 Mats Bengtsson <mabe@s3.kth.se>
14919 * Documentation/user/notation.itely (Ancient rests): Fix typo
14922 2005-01-13 Jan Nieuwenhuizen <janneke@gnu.org>
14924 * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14926 * lily/main.cc (setup_paths): Add cff.
14928 * mf/GNUmakefile (foe): Include actual target %.cff.
14929 (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14931 2005-01-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
14933 * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14934 suffix for main_input_b_.
14936 * scm/music-functions.scm (toplevel-music-functions):
14937 precompute music lengths for music expressions.
14939 2005-01-11 Nicolas Sceaux <nicolas.sceaux@free.fr>
14941 * lily/include/input.hh (class Input): new `end_' slot for end of
14942 input. Renamed defined_str0_ to start_.
14944 * lily/input.cc (Input): Add Input::Input (Input const &) and
14945 remove Input::Input (Source_file*, char const *). Use the new
14947 (set_location): method used by bison to propagate input
14948 locations (YYLLOC_DEFAULT).
14949 (end_line_number, end_column_number, step_forward): new methods
14951 * lily/input-scheme.cc (ly:input-both-locations): new function,
14952 similar to ly:input-location, but also return the end line and
14955 * lily/include/includable-lexer.hh:
14956 * lily/includable-lexer.cc:
14957 * lily/include/lily-lexer.hh (class Lily_lexer):
14958 * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14959 Includable_lexer to Lily_lexer, in order to update lexloc (the
14960 yylloc), a new slot of Lily_lexer.
14961 (here_input, LexerError): simplify by using the lexloc slot (aka
14964 * lily/lexer.ll: #define yylloc to use input locations (it may
14965 be useless here?). Fixed the #embedded_scm rule (step the location
14966 forward in order to skip the sharp sign before parsing the scheme
14969 * lily/include/lily-parser.hh (class Lily_parser):
14970 * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14972 (parser_error): overload for more precise locations of errors.
14974 * lily/parser.yy (YYLTYPE): set location type to Input
14975 (YYLLOC_DEFAULT): use Input::set_location()
14976 (yylex): add the YYLTYPE* location parameter.
14977 Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14978 Give an Input parameter to THIS->parser-error() for more accurate
14981 2005-01-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
14983 * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14985 * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14986 on BEAMQUANTING for non-NDEBUG builds.
14988 * lily/stem.cc (head_count): performance: avoid String::String()
14989 inside oft called function.
14991 2005-01-09 Graham Percival <gperlist@shaw.ca>
14993 * Documentation/user/examles.itely: attempted fix for broken
14994 string quartet template.
14996 * Documentation/user/notation.itely: remove unnecessary broken
14999 2005-01-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
15001 * VERSION (PACKAGE_NAME): release 2.5.7
15003 2005-01-09 Jan Nieuwenhuizen <janneke@gnu.org>
15005 * config.make.in (METAFONT): Append -progname=mf, fixes use with
15006 mf-nowin for teTeX-3.0. Backportme.
15008 * scm/output-svg.scm (utf8-string): New function.
15010 * scm/output-gnome.scm (utf8-string): New function.
15011 (otf-name-mangling): Remove.
15013 * lily/pango-font.cc (Pango_font): Use font string iso font
15014 filename for utf8-text.
15016 * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
15019 2005-01-08 Graham Percival <gperlist@shaw.ca>
15021 * Documentation/user/notation.itely: add info about
15022 Staff.extraNatural = ##f in Pitches section. Also
15023 fixed some minor issues in the Vocal music section.
15025 2005-01-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
15027 * scm/output-ps.scm (white-text): comment out Helvetica font,
15028 which is broken for my GS install.
15030 * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
15031 which provides a tighter bbox.
15033 * scm/define-grobs.scm (all-grob-descriptions): remove all
15034 extra-offsets from definitions.
15036 2005-01-08 Erlend Aasland <erlenda@gmail.com>
15038 * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
15039 add tuning for 4-string bass and some common 4/5-string banjo
15040 tunings. New function (four-string-banjo) turns a 5-string tuning
15041 into a 4-string tuning. New function
15042 (fret-number-tablature-format-banjo) computes correct fret numbers
15043 on 5-string banjos.
15045 * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
15046 Add beam correction to TabVoice.
15048 * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
15049 using bold font; makes tabs more readable.
15051 2005-01-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
15053 * lily/font-select.cc (get_font_by_design_size): don't make
15054 Modified_font_metric; this causes trouble, since we don't know the
15055 font magnification from inside Pango_font::text_stencil()
15057 * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
15059 * Documentation/user/notation.itely (The Lyrics context): comment out
15060 broken {Small ensembles} link.
15062 * scm/framework-svg.scm (output-framework): change calling convention.
15064 * lily/object-key-dumper-scheme.cc: new file.
15066 * lily/object-key-undumper-scheme.cc: new file.
15068 * lily/tweak-registration-scheme.cc: new file.
15070 * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
15072 * Documentation/user/examples.itely (String quartet): uncomment
15075 * lily/font-config.cc: new file.
15077 2005-01-08 Jan Nieuwenhuizen <janneke@gnu.org>
15079 * scm/output-svg.scm:
15080 * scm/output-gnome.scm: s/bigcheese/emmentaler.
15082 * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
15084 2005-01-07 Jan Nieuwenhuizen <janneke@gnu.org>
15086 * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
15089 * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
15091 2005-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
15093 * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
15095 * lily/include/main.hh: lose _b hungarian suffixes for global
15098 * lily/include/lily-guile-macros.hh: new file.
15100 * lily/pango-select-scheme.cc (LY_DEFINE): new file.
15102 * lily/general-scheme.cc: new file.
15104 * lily/font-select.cc (get_font_by_design_size): retrieve
15105 PangoFont for (designsize . "pango-descr") entries.
15107 * lily/lily-parser-scheme.cc: new file.
15109 * lily/output-def-scheme.cc: new file.
15111 * lily/paper-book-scheme.cc: new file.
15113 * lily/duration-scheme.cc (LY_DEFINE): new file.
15115 * lily/pitch-scheme.cc: new file.
15117 * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
15119 2005-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
15121 * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
15123 2005-01-06 Graham Percival <gperlist@shaw.ca>
15125 * Documentation/user/notation.itely: minor editing.
15127 * Documentation/user/changing-defaults: minor editing.
15129 * Documentation/user/examples.itely: add template for
15130 string quartet part extraction; demonstrates tag.
15132 2005-01-06 Erlend Aasland <erlenda@gmail.com>
15134 * Documentation/user/notation.itely: documents
15135 format-mark-box-letters and format-mark-box-numbers
15137 * scm/define-context-properties.scm: change comment.
15139 2005-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
15141 * scm/framework-ps.scm (output-classic-framework): new function:
15142 dump systems as separate .eps files (without fonts) and write a
15143 single collecting .tex file.
15145 2005-01-05 Mats Bengtsson <mabe@s3.kth.se>
15147 * Documentation/user/notation.itely (Setting simple songs):
15148 Correct several errors in the equivalent formulation of
15150 (The Lyrics context): Corrected link to the SATB example.
15152 2005-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
15154 * scm/lily.scm (completize-formats): new function
15155 (postprocess-output): new function
15157 * lily/paper-book.cc (classic_output): change calling
15158 convention. Give basename as first argument.
15159 remove Paper_book::post_processing().
15161 * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
15163 2005-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
15165 * lily/paper-outputter.cc (LY_DEFINE): new function
15166 ly:outputter-close.
15168 * lily/main.cc: change --format,-f to --backend,-b
15170 * lily/include/main.hh: rename format to backend.
15172 * scm/translation-functions.scm (format-mark-box-numbers): add.
15173 patch by Erlend Aasland
15175 2005-01-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
15177 * lily/pango-font.cc (text_stencil): dump string as
15178 (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
15180 2005-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
15182 * configure.in (gui_b): Remove handy developer-only
15183 PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
15184 CVS source installations (but break other non-default but correct
15185 PKG_CONFIG_PATH setups), as this is no longer developer-only.
15188 * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
15189 compatibility (backportme).
15191 * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
15193 2005-01-03 Werner Lemberg <wl@gnu.org>
15195 Prepare glyph shapes for mf2pt1 conversion.
15197 * mf/feta-accordion.mf (accreg_pen): Removed. No longer used.
15198 (accDiscant, accFreebase, accStdbase): Replace `draw' with
15200 (accDot): Use `drawdot'.
15201 (accBayanbase): Replace `draw' with `draw_gridline'.
15202 (print_penpos): Moved to feta-macros.mf.
15203 (accOldEE): Replace `filldraw' with `penstroke'.
15204 Replace `draw' with `penstroke' and `drawdot'.
15206 * mf/feta-banier.mf: Code clean-up.
15207 ("grace dash (up)", "grace dash (down)"): Replace `draw' with
15210 * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
15212 * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
15213 paremeter to control drawing of labels. Update all callers.
15215 * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
15216 (new_bulb): Return a bulb as a single path. To do that, it now
15217 takes some more parameters. Updated all callers.
15218 (draw_gclef): Major clean-up. `draw' has been replaced with
15219 `penstroke', unnecessary outlines have been removed.
15220 Remove (unused) gnome-canvas code.
15222 * mf/feta-macros.mf (print_penpos): New macro (from
15223 feta-accordion.mf).
15226 * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
15227 ("Pedal dot"): Use `drawdot'.
15228 (draw_pedal_P): Add parameter to control drawing of labels. Update
15231 (draw_pedal_e): Add parameter to control drawing of labels. Update
15233 (draw_pedal_d): Add parameter to control drawing of labels. Update
15235 Revert drawing direction.
15237 * mf/feta-schrift.mf (draw_fermata): Use single path.
15238 (draw_short_fermata): Replace `filldraw' with `fill'.
15239 (draw_long_fermata, draw_very_long_fermata): Replace calls to
15240 `draw_rounded_block' with a single path.
15241 ("Thumb"): Draw full circle instead of mirroring segments.
15242 (draw_accent): New macro.
15243 ("> accent", "espr"): Use it.
15244 (draw_marcato): Replace `filldraw' and `draw' with `fill'.
15245 ("open (unstopped)"): Draw full circle instead of mirroring
15247 (draw_vee): Removed.
15248 ("Upbow"): Use `draw_accent' instead of `draw_vee'.
15249 ("Downbow"): Replace calls to `draw_rounded_block' with a single
15251 ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
15252 partial pieces drawn with `fill' -- these do still overlap with the
15253 stem of the `t' but just once, not multiple times so that fontforge
15254 can handle it gracefully.
15255 Change other parts of the glyph so that fontforge's overlapping
15256 algorithm reliably works.
15257 (draw_heel): Replace `draw' with `fill'.
15258 (draw_toe): Use `draw_accent' instead of `draw_vee'.
15259 ("Flageolet"): Replace `draw' with `penstroke'.
15260 ("Segno"): Replace `filldraw' with `penstroke'.
15261 Replace `draw' with `drawdot'.
15262 ("Coda"): Replace `fill' with `penstroke', using a single path.
15263 ("Varied Coda"): Use less overlapping paths.
15264 (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
15267 * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
15268 group to better control the `labels' command.
15269 Rename argument to `offset' and use it actually. Update all
15271 Replace `filldraw' with `fill'.
15272 ("mordent", "prallmordent", "upmordent", "downmordent",
15273 "lineprall"): Replace `draw' with `draw_gridline'.
15274 ("upprall", "downprall"): Replace `draw' with `fill'.
15276 * mf/feta-timesig.mf: Formatting.
15278 * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
15281 (draw_paren): Move code to draw labels to...
15282 ("Right Parenthesis"): Here.
15284 2005-01-02 Graham Percival <gperlist@shaw.ca>
15286 * Documentation/user/notation.itely: add example of \setTextDecresc
15289 2005-01-02 Tatsuya Ono <tats_ono@infoseek.jp>
15291 * scm/define-markup-commands.scm : fix glyph-strings of
15292 accidentals and \note-by-number
15294 2005-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
15296 * VERSION: 2.5.6 released.
15298 * ps/lilyponddefs.ps: put mm -> pt scaling in here.
15300 * input/regression/new-markup-scheme.ly: oops. font-family=music
15301 -> font-encoding fetaMusic.
15303 * lily/main.cc: put default to PS.
15305 * lily/tfm.cc: idem.
15307 * lily/afm.cc: idem.
15309 * lily/include/modified-font-metric.hh (struct
15310 Modified_font_metric): remove coding_scheme() method.
15312 * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
15314 * scripts/convert-ly.py (conv): crash on encountering \encoding.
15316 * input/les-nereides.ly: convert to utf8
15318 * lily/modified-font-metric.cc (text_dimension): idem.
15320 * lily/parser.yy (TODO): idem.
15322 * lily/include/lily-lexer.hh (class Lily_lexer): idem.
15324 * lily/lexer.ll: remove encoding
15326 * scm/framework-ps.scm (output-variables): separately scale the
15329 * lily/pango-font.cc (Pango_font): fix scaling.
15331 * lily/font-metric.cc (design_size): design_size returns a
15332 dimension now as well.
15334 2004-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
15336 * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
15339 * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
15341 2004-12-30 Jan Nieuwenhuizen <janneke@gnu.org>
15343 * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
15344 install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
15346 2004-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
15348 * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
15349 in first run as well.
15351 * scm/paper.scm (layout-set-staff-size): use text-font-size in
15352 dimension less points (ie. 12 = 12 point)
15354 * lily/pango-select.cc (select_pango_font): use find_scaled_font().
15356 * lily/all-font-metrics.cc (find_pango_font): set description_
15358 * lily/pango-font.cc (text_stencil): export size as well.
15359 (text_stencil): fix scaling and extents box.
15361 2004-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
15363 * Documentation/topdocs/NEWS.texi (Top): add -f texstr
15365 * Documentation/user/invoking.itely (Invoking lilypond): document
15368 * scripts/convert-ly.py (conv): add ancient rules.
15370 * scm/clef.scm (c0-pitch-alist): replace - with .
15372 * scripts/lilypond-book.py (process_snippets): add texstr support.
15374 * scm/framework-texstr.scm (header): change extension to .textmetrics
15376 * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
15379 * lily/text-metrics.cc: new file.
15380 (try_load_text_metrics): new function
15382 * lily/include/text-metrics.hh: new file.
15384 2004-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
15386 * lily/include/lily-guile.hh (ly_lily_module_constant): rename
15387 ly_scheme_function to ly_lily_module_constant.
15389 * lily/modified-font-metric.cc (text_dimension): try
15390 lookup_tex_text_dimension() first.
15392 * lily/tfm.cc: new function ly:load-text-dimensions
15394 2004-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
15396 * scm/output-texstr.scm (text): use \lilygetmetrics
15398 * scm/framework-texstr.scm (header): dump in new format.
15400 * tex/lilypond-tex-metrics: new file.
15402 2004-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
15404 * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
15406 (index_to_charcode): New method.
15408 * scm/output-ps.scm (glyph-string):
15409 * scm/output-gnome.scm (glyph-string): Add FONT parameter.
15411 2004-12-26 Jan Nieuwenhuizen <janneke@gnu.org>
15413 * scm/output-gnome.scm (FIXME-glyph-string): New function. Cannot
15414 implement fully, need FONT to get to charcode.
15416 * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
15420 * Documentation/user/changing-defaults.itely: Fix internalsrefs
15421 {Tunable context properties},
15422 {All layout objects},
15423 {Music definitions}.
15425 2004-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
15427 * VERSION: release 2.5.5
15429 * lily/main.cc: use TeX as default output format.
15431 * flower/file-path.cc (find): try to open directly as well, so we
15432 find absolute path files.
15434 * lily/pango-select.cc: new file.
15436 * scm/framework-ps.scm: remove all encoding code.
15437 load pfb/pfa for PangoFont too.
15439 * lily/lily-guile.cc (ly_chain_assoc_get): new function.
15441 2004-12-22 Werner Lemberg <wl@gnu.org>
15443 Prepare glyph shapes for mf2pt1 conversion.
15445 * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
15447 * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
15448 (define_triangle_shape): Use it to replace `draw' with `fill' and
15449 `unfill'. Update all callers.
15450 (draw_slash): Replace `filldraw' with `fill'. Update all callers.
15451 (draw_cross): Ditto.
15452 ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
15453 Use penrazor for better conversion with mf2pt1.
15454 (generic_draw_solfa_note_shape, draw_solfa_note_shape,
15455 draw_solfa_quarter_note_shape, triangle): Removed. Unused.
15456 (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
15457 draw_la_head, draw_ti_head): Replace `filldraw' with
15458 `fill'. Update all callers.
15460 2004-12-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
15462 * lily/paper-book.cc (output): revert: only allow a single output
15465 * lily/include/pango-font.hh: new file.
15467 * lily/pango-font.cc: new file.
15469 * lily/font-metric.cc (text_stencil): new routine
15471 * lily/all-font-metrics.cc (find_pango_font): new routine.
15473 * lily/include/font-metric.hh (struct Font_metric): add
15476 * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
15478 2004-12-22 Werner Lemberg <wl@gnu.org>
15480 Prepare glyph shapes for mf2pt1 conversion.
15482 * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
15484 * mf/feta-toevallig.mf: Formatting.
15485 (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
15486 ("Natural"): Fix paths to allow better postprocessing.
15487 (draw_meta_flat): Use `z3l' as additional point in path to get
15488 better conversion with mf2pt1.
15489 Other minor cleanups.
15490 ("3/4 Flat"): Add auxiliary points and modify path to replace
15491 `draw' with `fill'.
15492 ("Double Sharp"): Mirror path segments instead of picture elements
15493 to get a single outline.
15494 Modify path to replace `filldraw' with `fill'.
15496 2004-12-22 Graham Percival <gperlist@shaw.ca>
15498 * input/test/unfold-all-repeats.ly: added file back.
15500 * Documentation/user/notation.itely,
15501 Documentation/user/programming-interface.itely
15502 Documentation/user/changing-defaults.itely: fixed misc broken
15503 links to input/test/ files.
15505 2004-12-22 Jan Nieuwenhuizen <janneke@gnu.org>
15507 * tex/texinfo.tex: Update. We should not be distributing this,
15508 but since we do, use latest version.
15510 * Documentation/user/macros.itexi: Comment-out \fetaflat,
15511 \fetasharp. Fixes make web. FIXME: make usable (compatible?) TeX
15512 macros for feta glyphs.
15514 2004-12-22 Graham Percival <gperlist@shaw.ca>
15516 * Documentation/user/changing-defaults.itely: fix index for set.
15518 * Documentation/user/converters.itely: added convert-ly bugs list
15521 2004-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
15523 * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
15524 to empty. Fixes make web, using gs-gpl-8.01. In fact,
15525 gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
15526 resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
15528 * mf/GNUmakefile (pfa_warning): Use less broken check.
15530 * python/lilylib.py (setup_environment): Remove cruft from
15533 * configure.in: Bump mftrace requirement to 1.1.1.
15535 2004-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
15537 * scm/output-svg.scm (beam): Use polygon.
15539 * scm/lily-library.scm: Bugfix.
15541 * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
15543 * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
15545 2004-12-19 Werner Lemberg <wl@gnu.org>
15547 Prepare glyph shapes for mf2pt1 conversion.
15549 * mf/feta-eindelijk: Some formatting.
15550 (multi_rest_x, multi_beam_height): Removed. Unused.
15551 ("Quarter rest"): Use `intersectiontimes' to create a single
15553 (rest_crook): Removed. Unused.
15554 (draw_rest_bulb): Return path (without filling). Update callers.
15556 (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
15557 "128th rest"): Simplify `pat'.
15558 Create single outline.
15560 2004-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
15562 * mf/GNUmakefile (ALL_GEN_FILES):
15563 (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
15565 * scm/output-svg.scm (polygon, draw-line, dashed-line): New
15568 2004-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
15570 * scm/output-texstr.scm (placebox): add routine
15572 * VERSION (PACKAGE_NAME): release 2.5.4
15574 * scm/framework-texstr.scm (output-framework): new file.
15576 * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
15579 * Documentation/user/invoking.itely (Invoking lilypond): add SVG
15581 * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
15584 * configure.in (gui_b): bump mftrace requirement to 1.1.0
15586 * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
15588 * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
15590 2004-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
15592 * scm/framework-svg.scm (dump-page): Implement landscape.
15594 2004-12-18 Jan Nieuwenhuizen <janneke@gnu.org>
15596 * lily/main.cc (setup_paths): Add svg to search path.
15598 * scm/output-svg.scm:
15599 * scm/framework-svg.scm: Add pageSet. Update.
15600 (dump-fonts): New function.
15601 (output-framework): Use it.
15604 * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
15606 2004-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
15608 * tex/lilyponddefs.tex: comment out new ifpdf code.
15610 2004-12-17 Jan Nieuwenhuizen <janneke@gnu.org>
15613 * SConstruct (symlink): Replace afm by otf.
15615 * scm/framework-gnome.scm (gnome-main): Remove invocation of
15616 ly:pango-add-afm-decoder.
15618 * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
15620 2004-12-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
15622 * scm/output-ps.scm (new-text): don't access t glyph for getting
15625 * ly/init.ly: warn about \version
15627 * lily/lexer.ll: set version-seen?
15629 2004-12-17 Jan Nieuwenhuizen <janneke@gnu.org>
15631 * scm/output-svg.scm (string->entities): Update.
15633 2004-12-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
15635 * lily/main.cc (setup_paths): replace afm by otf for path.
15637 * lily/pangofc-afm-decoder.cc: remove.
15639 * lily/include/pangofc-afm-decoder.hh: remove.
15641 * scm/framework-scm.scm (output-framework): new file.
15643 * mf/GNUmakefile: remove SAUTER_FONTS.
15644 remove SVG/sodipodi hacks.
15646 * scm/lily-library.scm (stderr): move stderr.
15648 * mf/GNUmakefile: remove AFM support.
15650 * buildscripts/mf-to-table.py (base): remove AFM support.
15652 * lily/open-type-font.cc (design_size): use design_size
15654 2004-12-17 Pedro Kroger <kroeger@pedrokroeger.net>
15656 * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15658 2004-12-17 Jan Nieuwenhuizen <janneke@gnu.org>
15660 * mf/GNUmakefile: Generate combined aybabtu info.
15661 * mf/aybabtu.pe.in (i): Load it.
15663 * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15666 * lily/include/open-type-font.hh (count): New method.
15668 * mf/aybabtu.pe.in: Typo.
15670 * Documentation/user/out/lilypond-internals.nexi (Scheme
15673 * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15675 2004-12-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
15677 * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15680 * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15682 * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15683 (tex-font-command-raw): new function.
15685 * lily/include/virtual-font-metric.hh (Module): remove file
15687 * lily/virtual-font-metric.cc (Module): remove file.
15690 * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15691 (get_indexed_char): read bbox from lily table if present.
15693 2004-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
15695 * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15698 * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15699 global glyphname. Enables more than 64 glyphs in the OTF.
15701 2004-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
15703 * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15706 * lily/open-type-font.cc (design_size): Use 12 as default for
15709 * mf/aybabtu.pe.in: New file. Merge all our braces.
15711 * mf/GNUmakefile: Generate aybabtu.
15713 * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15715 2004-12-14 Jan Nieuwenhuizen <janneke@gnu.org>
15717 * scm/lily-library.scm (char->unicode-index): Remove.
15719 * scm/output-gnome.scm (text): Bugfix for plain string input.
15722 * scm/output-svg.scm (svg-font): Add weight to font selection.
15724 2004-12-14 Mats Bengtsson <mabe@s3.kth.se>
15726 * Documentation/topdocs/INSTALL.texi (Top): Point to
15727 buildscripts/out/clean-fonts instead of
15728 buildscripts/clean-fonts.sh.
15730 2004-12-13 Graham Percival <gperlist@shaw.ca>
15732 * input/regression/figured-bass.ly: attempt to clarify text.
15734 * Documentation/user/notation.tely: add cindex for tag, attempt to
15735 add figured bass example.
15737 * Documentation/user/changing-defaults: basic editing.
15739 2004-12-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
15741 * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table.
15743 * lily/open-type-font.cc (LY_DEFINE): new function
15746 * lily/include/font-metric.hh (struct Font_metric): new method
15749 * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15750 . with - in add.stem.
15752 2004-12-13 Jan Nieuwenhuizen <janneke@gnu.org>
15754 * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15757 * lily/rest.cc (glyph_name): Change - to . .
15759 * scm/output-gnome.scm (text): Hello world, again.
15761 * scm/output-svg.scm (named-glyph): New function. Hello world!
15763 * lily/modified-font-metric.cc (index_to_charcode): New method.
15765 * lily/include/font-metric.hh (index_to_charcode): New function.
15767 * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15769 (ly:font-glyph-to-index): Remove.
15771 2004-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
15773 * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15775 * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15777 * lily/open-type-font.cc (load_scheme_table): new function
15779 * lily/dots.cc (print): replace -
15781 * lily/open-type-font.cc (attachment_point): new function.
15782 (load_table): read LILC table
15784 * buildscripts/gen-bigcheese-scripts.py (Module): new
15785 file. Generate FF scripts.
15787 * mf/feta-din10.mf: idem.
15789 * mf/feta-nummer10.mf: remove mf files.
15791 * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15793 2004-12-12 Jan Nieuwenhuizen <janneke@gnu.org>
15795 * lily/lily-guile.cc: Use scm_from_locale_stringn.
15797 * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15800 2004-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
15802 * lily/open-type-font.cc (get_indexed_char): scale metrics by
15803 design-size and units_per_EM.
15805 * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15807 2004-12-12 Jan Nieuwenhuizen <janneke@gnu.org>
15809 * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15810 does not crash fontforge.
15812 * scm/lily-library.scm (char->unicode-index): Hack to map onto
15815 2004-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
15817 * scm/framework-ps.scm (ps-embed-cff): new function.
15819 * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15821 2004-12-12 Werner Lemberg <wl@gnu.org>
15823 * mf/bigcheese.pe.in: Add PUA mapping.
15824 Don't create Type 42 but bare CFF font.
15826 2004-12-12 Jan Nieuwenhuizen <janneke@gnu.org>
15828 * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15829 within canvas boundaries.
15831 * mf/merge.pe.in: Set font names, version, license GPL.
15833 * make/substitute.make: Add FONTFORGE.
15835 * config.make.in (FONTFORGE): Add.
15837 * configure.in (gui_b): Use PATH_PROG for fontforge.
15839 2004-12-11 Graham Percival <gperlist@shaw.ca>
15841 * scm/define-markup-commands.scm: add baseline-skip to info
15844 2004-12-11 Jan Nieuwenhuizen <janneke@gnu.org>
15846 * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15848 * scm/output-gnome.scm (named-glyph): Use it.
15850 * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15852 * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15853 (upper_string, lower_string, reverse_string): Remove.
15855 * configure.in (fontforge): Reinstate version check.
15857 * ly/engraver-init.ly: Fix clef glyph names.
15859 * lily/time-signature.cc (special_time_signature): Fix fraction
15862 2004-12-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
15864 * mf/merge.pe: new file.
15866 * lily/freetype.cc: new file.
15868 * lily/include/open-type-font.hh (class Open_type_font): new file.
15870 * lily/include/freetype.hh: new file.
15872 * lily/open-type-font.cc: new file.
15874 * lily/all-font-metrics.cc (find_otf): new function.
15876 2004-12-11 Jan Nieuwenhuizen <janneke@gnu.org>
15878 * lily/time-signature.cc (special_time_signature): Fix.
15880 * configure.in (PKG_CONFIG_PATH): Remove stray `i'. Check for
15881 GTK2 before checking for pango. Fixes -fgnome.
15883 * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15886 * scm/define-markup-commands.scm:
15887 * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15889 * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15891 * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15892 date versions. Fixes configure.
15893 (STEPMAKE_CHECK_VERSION): Support optional actual program version
15896 2004-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
15898 * buildscripts/mf-to-table.py (write_ps_encoding): write real
15901 * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15903 2004-12-09 Graham Percival <gperlist@shaw.ca>
15905 * Documentation/user/changing-defaults.itely: add info about
15906 make-dynamic-script
15908 * Documentation/user/notation.itely: add link in dynamics to
15909 section about make-dynamic-script.
15911 2004-12-09 Christian hitz <chhitz@gmx.net>
15913 * lily/lily-guile.cc: change MACOS_X to __APPLE__
15915 2004-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
15917 * buildscripts/mf-to-table.py (parse_logfile): use . for
15918 concatting name and group.
15919 (parse_logfile): use M for Minus (negative.)
15921 * lily/include/type-swallow-translator.hh
15922 (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15924 * lily/*.cc: cosmetics around = sign.
15926 * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15927 lyric spacing on the penultimate column.
15929 2004-12-05 Christian Hitz <chhitz@gmx.net>
15932 * lily/accidental-placement.cc:
15933 * lily/bar-line.cc:
15934 * lily/beam-concave.cc:
15935 * lily/beam-quanting.cc:
15937 * lily/bezier-bow.cc:
15939 * lily/break-align-interface.cc:
15941 * lily/dimension-cache.cc:
15942 * lily/dot-column.cc:
15943 * lily/font-metric.cc:
15944 * lily/font-select.cc:
15945 * lily/gourlay-breaking.cc:
15946 * lily/grob-property.cc:
15948 * lily/lily-guile.cc:
15949 * lily/line-spanner.cc:
15951 * lily/lyric-extender.cc:
15952 * lily/lyric-hyphen.cc:
15953 * lily/mensural-ligature.cc:
15954 * lily/midi-def.cc:
15956 * lily/note-collision.cc:
15957 * lily/note-column.cc:
15958 * lily/note-head.cc:
15959 * lily/paper-outputter.cc:
15960 * lily/percent-repeat-item.cc:
15961 * lily/rest-collision.cc:
15962 * lily/side-position-interface.cc:
15963 * lily/simple-spacer.cc:
15964 * lily/slur-configuration.cc:
15965 * lily/slur-scoring.cc:
15967 * lily/spaceable-grob.cc:
15968 * lily/spacing-spanner.cc:
15970 * lily/staff-symbol-referencer.cc:
15973 * lily/system-start-delimiter.cc:
15975 * lily/text-item.cc:
15977 * lily/tuplet-bracket.cc:
15978 * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15979 <cmath> beacause isinf/isnan is undefined in <cmath>
15981 2004-12-03 Mats Bengtsson <mabe@s3.kth.se>
15983 * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15985 2004-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
15987 * VERSION: release 2.5.3
15989 2004-11-29 Arno Waschk <arno@arnowaschk.de>
15991 * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15993 2004-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
15995 * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15997 * lily/note-head.cc (internal_print): always try the "s" head if
16000 * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
16002 2004-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
16004 * mf/parmesan-heads.mf (overdone_heads): typos.
16006 2004-11-30 Nicolas Sceaux <nicolas.sceaux@free.fr>
16008 * lily/parser.yy (markup): in markups, { .. } without command
16009 before are also flattened, ie \line must be explicitely used.
16011 * Documentation/user/changing-defaults.itely:
16012 * Documentation/user/notation.itely:
16013 * input/wilhelmus.ly:
16014 * input/regression/instrument-name-markup.ly:
16015 * input/regression/markup-score.ly:
16016 * input/regression/new-markup-scheme.ly:
16017 * input/regression/new-markup-syntax.ly:
16018 * input/test/coriolan-margin.ly: use \line in markups where
16021 2004-11-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
16023 * scm/new-markup.scm (map-markup-command-list): helper function
16024 used in parser.yy to map markup commands on a markup list.
16026 * lily/parser.yy: get rid off < > in markups by treating { } as
16029 * lily/lexer.ll: remove < > from markup lexer mode.
16031 * scripts/convert-ly.py (conv): add rule for converting
16032 \markup < > to \markup { }
16034 * ly/titling-init.ly:
16035 * input/test/coriolan-margin.ly:
16036 * input/regression/new-markup-syntax.ly:
16037 * input/regression/new-markup-scheme.ly:
16038 * input/regression/multi-measure-rest-text.ly:
16039 * input/regression/markup-stack.ly:
16040 * input/regression/markup-score.ly:
16041 * input/regression/instrument-name-markup.ly:
16042 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly:
16043 * input/mutopia/R.Schumann/romanze-op28-2.ly:
16044 * input/mutopia/J.S.Bach/wtk1-fugue2.ly:
16045 * input/wilhelmus.ly:
16046 * Documentation/user/notation.itely:
16047 * Documentation/user/music-glossary.tely:
16048 * Documentation/user/changing-defaults.itely: change < > to { } in
16051 2004-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
16053 * lily/accidental-placement.cc (position_accidentals): shortcut if
16054 no accidentals to place.
16056 2004-11-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
16058 * scm/define-grob-properties.scm (all-user-grob-properties): fixed
16059 typo s/ly:dimension ?/ly:dimension?/
16061 * input/regression/lily-in-scheme.ly:
16062 * input/regression/music-function.ly:
16063 * ly/spanners-init.ly (assertBeamSlope):
16064 * scm/music-functions.scm (def-grace-function): add the paper
16065 argument to music function definitions.
16067 2004-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
16069 * lily/moment.cc (LY_DEFINE):
16070 ly:moment-main-{denominator,numberator}, new function.
16072 * lily/score-engraver.cc (typeset_all): assign to column on basis
16073 of axis-group-parent-X setting.
16075 * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
16076 add_element() on basis of axis-group-parent-Y setting.
16078 * lily/grob.cc: add axis-group-parent-{XY} properties.
16080 * input/regression/spacing-stick-out.ly: new file.
16082 * lily/simple-spacer.cc (add_columns): use binary search for
16083 setting column rods. Changes O(n^2) to O(n log(n)) for
16084 constructing spacing problem from columns.
16085 (add_columns): read allow-outside-line to make sure no texts stick
16087 (solve): Simple_spacer::is_active() only determines
16088 satisfies_constraints_ for non-ragged typesetting.
16090 * lily/simultaneous-music.cc (to_relative_octave): only set
16091 old_relative_used if return pitch actually changed.
16093 * scm/define-context-properties.scm
16094 (all-user-translation-properties): change to match implementation.
16096 * python/lilylib.py: Replace re.match by re.search and adds "-c
16097 showpage" to the gs command line (Johannes Schindelin)
16099 * scm/framework-ps.scm (output-preview-framework): sanitize bbox
16100 before processing. Prevents crash when inf is in the extent.
16102 * scm/define-markup-commands.scm (note-by-number): add "s" to
16103 "noteheads-" glyphname.
16105 * lily/parser.yy (Generic_prefix_music): supply parser argument to
16106 music function as well.
16108 2004-11-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
16110 * VERSION: release 2.5.2
16112 * Documentation/user/changing-defaults.itely (Creating titles):
16113 add breakbefore variable.
16115 * lily/paper-book.cc (set_system_penalty): new function. Set
16116 penalty_ based on breakBefore setting
16118 * lily/context-specced-music-iterator.cc (construct_children):
16119 interpret special context id $uniqueContextId
16121 * lily/context.cc (create_unique_context): new method. Move
16122 creation of unique (\new) contexts into interpreting phase. This
16131 * scm/define-music-properties.scm (all-music-properties): add
16132 quoted-voice-direction
16134 * ly/music-functions-init.ly: killCues function.
16136 * scm/music-functions.scm (cue-substitute): move creation of voice
16137 contexts further to the back.
16139 2004-11-25 Werner Lemberg <wl@gnu.org>
16141 * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
16142 `/hyphen' in encoding vector to get correct glyph name for EC fonts.
16144 2004-11-24 Erik Sandberg <ersa9195@student.uu.se>
16146 * buildscripts/guile-gnome.sh: Fixed typo.
16148 2004-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
16150 * lily/lexer.ll: add < > to markup lexer mode (backportme)
16152 * scripts/abc2ly.py (dump_slyrics): add ord().
16154 * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
16155 to regular engraver.
16157 2004-11-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
16159 * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
16161 2004-11-22 Jan Nieuwenhuizen <janneke@gnu.org>
16163 * scm/define-markup-commands.scm (fill-line): Typo.
16165 * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
16168 2004-11-22 Erik Sandberg <ersa9195@student.uu.se>
16170 * ly/dynamic-scripts-init.ly: Fixed typo.
16172 2004-11-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
16174 * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
16175 note-head, to have different attachment points for up and down.
16177 * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
16179 * mf/feta-generic.mf (else): remove solfa.
16181 * mf/feta-bolletjes.mf (tishape): remove unicode test.
16183 * scm/define-context-properties.scm
16184 (all-user-translation-properties): add shapeNoteStyles property.
16186 * lily/shape-note-heads-engraver.cc (process_music): new file.
16188 * lily/event.cc (transpose): call Event::transpose() for
16189 transposing the tonic.
16191 2004-11-21 Jan Nieuwenhuizen <janneke@gnu.org>
16193 * scm/output-gnome.scm: Save some pointers about pango/fontconfig
16194 Unicode/OpenType and AFM.
16196 * lily/include/guile-compatibility.hh (scm_from_bool): Add.
16198 2004-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
16200 * lily/grob.cc (Grob): idem. Plugs mem leaks.
16202 * lily/context.cc (Context): unprotect key from ctor.
16204 * scm/stencil.scm (stack-lines): return empty-stencil if argument
16206 (stack-stencils): idem.
16208 * Documentation/user/changing-defaults.itely (Creating titles):
16209 document new title layout options.
16211 * lily/parser.yy (lilypond_header_body): copy previous
16212 $globalheader if present.
16214 * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
16217 * scm/page-layout.scm (marked-up-headfoot): remove old functions.
16219 * scm/titling.scm: remove old titling functions
16221 * lily/stencil.cc (translate): remove absolute dimension.
16223 * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
16226 * scm/page-layout.scm (marked-up-headfoot): create header/footer
16227 field from user-supplied markup
16229 * scm/define-markup-commands.scm (on-the-fly): new markup
16230 command. Enter SCM markup procedure directly in Scheme.
16231 (fromproperty): new markup command. Read markup from props argument.
16233 * scm/titling.scm (marked-up-title): create title via
16234 user-specified markup.
16236 * scm/define-markup-commands.scm (column): remove empty stencils
16239 * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
16240 not have side-effect of creating variable stub.
16242 * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
16244 2004-11-21 Jan Nieuwenhuizen <janneke@gnu.org>
16246 * scm/encoding.scm (coding-alist):
16247 * scm/font.scm (add-ec-fonts):
16248 * ly/paper-defaults.ly: Use actual name for EC fontencoding:
16249 Extended-TeX-Font-Encoding---Latin.
16251 * lily/side-position-interface.cc (general_side_position): Add
16252 actual offset to error message (avoid constant error messages).
16254 * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
16257 * lily/font-select.cc (select_encoded_font)
16258 (get_font_by_mag_step, get_font_by_design_size):
16259 * lily/modified-font-metric.cc (Modified_font_metric):
16260 * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
16262 * scm/encoding.scm (coding-alist): Add fetaDynamic.
16263 (read-encoding-file): Bugfix: do not require space after bracket.
16265 * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
16266 these do not exist.
16268 2004-11-20 Graham Percival <gperlist@shaw.ca>
16270 * Documentation/user/notation.itely: added info about typesetting
16273 2004-11-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
16275 * flower/interval.cc (T_to_string): gcc4 fixes.
16277 * scm/define-markup-commands.scm (fill-line): use
16278 stack-stencils. This fixes problems with putting already centered
16279 stencils in a line.
16281 * VERSION: release 2.5.1
16283 * lily/bar-line.cc (get_staff_bar_size): add line thickness.
16285 2004-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
16287 * input/example-[1-3].ly: simplify.
16289 * lily/cluster-engraver.cc (try_music): react to busy-playing-event
16291 * scm/output-ps.scm (new-text): new function. Use glyphshow to
16294 * scm/encoding.scm (decode-byte-string): new function.
16296 * scripts/convert-ly.py (conv): add warning about
16297 set-global-staff-size.
16301 * scripts/convert-ly.py (conv): add raggedlastbottom rule
16302 (conv): warn for TextSpanner split.
16303 (conv): warn for textheight.
16305 2004-11-19 Jan Nieuwenhuizen <janneke@gnu.org>
16307 * GNUmakefile.in (install-WWW): Invoke install-info, so that when
16308 building the documentation, info with images are installed.
16309 (final-install): Fix description. Mention sourcing of login
16310 scripts (instead of running).
16312 2004-11-18 Jan Nieuwenhuizen <janneke@gnu.org>
16314 * Debian lmodern support. Note that LilyPond will issue warnings
16316 no such encoding: "FontSpecific"
16318 The font selection mechanism wants to get the encoding from the
16319 font itself, but the idea of lmodern is that it is usable with
16320 different encodings, ie, Lily should get the encoding from the
16321 font tree, rather than the font itself. This would require some
16324 * configure.in: Test for and accept lmodern if EC fonts not found.
16326 * scm/framework-tex.scm (font-load-command): TeX font name
16327 mangling for latin1 encoded cork-lm fonts.
16328 (convert-to-ps): Load lm.map if available.
16330 * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
16333 * scm/encoding.scm (coding-alist): Add cork-lm encoding.
16335 * scm/font.scm: Add header. Autoload cork-lm and ec fonts if
16338 * lily/kpath.cc (ly_kpathsea_find_file): Rename. Do not use
16339 path for absolute file name, that is silly.
16341 * lily/score-engraver.cc (initialize):
16343 * Documentation/user/GNUmakefile (local-install-info): Invoke
16344 install-info --remove first.
16346 * #include cleanup (Andreas Scherer).
16348 2004-11-18 Heikki Junes <hjunes@cc.hut.fi>
16350 * input/test/script-abbreviations.ly: fix typos.
16352 2004-11-17 Werner Lemberg <wl@gnu.org>
16354 * python/lilylib.py (options_help_str): Support pretty-printing of
16355 newlines in fourth element of option description.
16357 * scripts/lilypond-book.py (option_definitions): Use new lilylib
16361 * Documentation/user/lilypond-book.itely: Finish update.
16363 2004-11-17 Jan Nieuwenhuizen <janneke@gnu.org>
16365 * Documentation/user/macros.itexi: Add comment about \command.
16367 * Documentation/user/lilypond.tely:
16368 * Documentation/user/lilypond-book.itely: Fix names of lilypond
16369 and lilypond-book nodes, so that `info lilypond' visits the manual
16370 at top level, and `info lilypond-book' visits the lilypond-book
16373 * Documentation/user/GNUmakefile (local-install-info): Fix rules
16374 and packager messages.
16376 * lily/pangofc-afm-decoder.cc: Update test.
16378 2004-11-16 Jan Nieuwenhuizen <janneke@gnu.org>
16380 * scm/lily-library.scm (char->unicode-index): New function.
16382 * scm/output-gnome.scm:
16383 * scm/output-svg.scm: Cleanup. Map custom fonts to PUA.
16385 * Proper naming of file name throughout; s/filename/file[-_]name/.
16387 * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
16389 * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
16391 2004-11-16 Werner Lemberg <wl@gnu.org>
16393 * scripts/lilypond-book.py: The Lord has commanded me to use only
16394 tabs for indentation. Your humble servant obeys.
16396 2004-11-16 Jan Nieuwenhuizen <janneke@gnu.org>
16398 * scm/output-svg.scm: Font fixes. Sodipodi now groks svg
16399 including font, if LilyPond-feta font is only feta font in path.
16401 * scm/output-gnome.scm (text): Revert to file name of font if font
16402 has no name. Fixes ec font selection.
16403 (char): Bugfix: do not utf8 twice. Fixes clefs.
16405 * scm/framework-svg.scm:
16406 * scm/output-svg.scm: New file. TODO: figure out how to
16407 do character by index in font.
16409 * scm/output-sodipodi.scm: Remove.
16411 * scm/output-ps.scm (stem): Remove.
16413 2004-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
16415 * scm/output-gnome.scm (beam): New function.
16416 (slur): Round corners.
16417 (round-filled-box): Round corners.
16419 2004-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
16421 * scm/output-gnome.scm (beam): add function.
16422 (draw-line): new routine.
16423 (dashed-line): stub; call draw-line
16424 (polygon): new routine.
16426 2004-11-15 Werner Lemberg <wl@gnu.org>
16428 * Documentation/user/lilypond-book.itely: Revise section on
16429 lilypond-book options.
16432 * scripts/lilypond-book.py: Change indentation to 4.
16435 2004-11-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
16437 * lily/system.cc (apply_tweaks): new function. Run tweaks on all
16438 grobs that have tweaks specced.
16440 2004-11-14 Heikki Junes <hjunes@cc.hut.fi>
16442 * Documentation/user/sound-output.itexi: add code snippets for MIDI.
16444 2004-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
16446 * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
16447 actual char #, not 0 based index.
16449 * lily/system-start-delimiter.cc (staff_brace): Start at 65.
16451 * mf/feta-beugel.mf: Actually start at char #65. Add header.
16452 Warning: do make -C mf clean.
16454 * lily/context-property.cc: Compile fix.
16456 * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
16457 Grok ec-fonts, braces and dynamics.
16459 * scm/framework-gnome.scm (gnome-main): Register braces with pango.
16461 2004-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
16463 * lily/include/tweak-registration.hh: new file.
16465 * lily/tweak-registration.cc: new file.
16467 * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
16470 * scm/output-gnome.scm (text): comment dribble.
16472 2004-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
16474 * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
16476 * scm/output-gnome.scm (bezier-sandwich): New function. Reset
16477 path-def before using. Fixes muchtomany slurs in wrong places
16480 2004-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
16482 * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
16484 * lily/include/object-key-undumper.hh (Module): new file.
16486 * lily/object-key-undumper.cc (Module): New file. Deserialize
16489 * lily/object-key-dumper.cc (Object_key_dumper): idem.
16490 Provide SCM bindings.
16492 * lily/include/object-key-dumper.hh (class Object_key_dumper):
16493 new file. Serialize object keys.
16495 * lily/object-key.cc (dump): new function.
16496 (as_scheme): new virtual function
16497 (undump): new function
16498 (undumpers): new table.
16500 * lily/include/global-context.hh (Context): take \score key upon init.
16502 * lily/object-key-dumper.cc (serialize_key): new file.
16504 * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
16506 * lily/lily-lexer.cc: remove \quote.
16508 * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
16510 * lily/context.cc (Context): take key argument in ctor.
16511 (create_context): new function
16513 * lily/grob.cc (Grob): take key argument in ctor.
16515 * lily/lilypond-key.cc (do_compare): new file.
16517 * lily/object-key.cc (Object_key): new file.
16519 * lily/include/object-key.hh (class Object_key): new file.
16521 * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
16523 2004-11-13 Graham Percival <gperlist@shaw.ca>
16525 * Documentation/user/lilypond-book.itely: add small warning about
16526 noindent default in lilypond-book.
16528 * Documentation/user/converters.itely: add examples for convert-ly.
16530 * Documentation/user/examples.itely: change version string in templates
16533 2004-11-12 Karl Hammar <karl@aspodata.se>
16535 * GNUmakefile.in (local-WWW-post): `find ...` overflows the
16536 cmdline, use xargs instead (backportme)
16538 2004-11-10 Andreas Scherer <andreas_mutopia@freenet.de>
16540 * Documentation/user/: Numerous fixes in the user manual.
16542 2004-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
16544 * lily/parser.yy (re_rhythmed_music): search music expression for
16545 context-id, surround by \new Voice if not found. Fixes:
16546 addlyrics-second-staff.ly
16548 * VERSION: 2.5.0 released.
16550 2004-11-12 Jan Nieuwenhuizen <janneke@gnu.org>
16552 * Documentation/index.html.in: Fix url to one big page. (backportme)
16554 * Documentation/user/GNUmakefile: Separate rules for split and
16555 unsplit html documents. Remove perl massaging. (backportme)
16557 2004-11-11 Graham Percival <gperlist@shaw.ca>
16559 * Documentation/user/lilypond-book.itely: add short warning about
16560 \lilypond{} in LaTeX docs.
16562 2004-11-11 Jan Nieuwenhuizen <janneke@gnu.org>
16564 * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
16565 found. (backportme)
16567 * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
16568 version requirement. (backportme)
16570 * configure.in: Be explicit about old versions of
16571 ec-fonts-mtraced. (backportme)
16573 * lily/context-selector.cc (set_tweaks): New function.
16574 * lily/grob-selector.cc (set_tweaks): (Re)set hash table. Fixes
16577 * Documentation/user/introduction.itely (Automated engraving):
16578 Remove fragment option. Fixes web.
16580 * lily/context-property.cc (make_item_from_properties):
16581 * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
16584 * scm/define-context-properties.scm
16585 (all-internal-translation-properties): Add tweakRank and tweakCount.
16588 * scm/define-grob-properties.scm (all-internal-grob-properties):
16589 Add tweak-rank and tweak-count.
16591 2004-11-10 Jan Nieuwenhuizen <janneke@gnu.org>
16593 * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
16597 * scm/framework-gnome.scm (item-event): Add support from TLA. Support
16598 animated/opaque grob dragging tweaks.
16600 * buildscripts/guile-gnome.sh: Update.
16602 2004-11-10 Mats Bengtsson <mabe@s3.kth.se>
16604 * scm/define-grobs.scm (all-grob-descriptions): Added
16605 line-interface to the LigatureBracket object.
16607 2004-11-10 Jan Nieuwenhuizen <janneke@gnu.org>
16609 * scm/framework-gnome.scm (item-event): Support non-animated mouse
16612 * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
16614 * lily/context-selector.cc (store_context): New function.
16616 * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
16617 (store_grob): New function.
16618 (identify_grob): Add Moment parameter.
16620 * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
16623 * scm/framework-gnome.scm (save-tweaks): Write as alist.
16625 2004-11-09 Jan Nieuwenhuizen <janneke@gnu.org>
16627 * scm/framework-gnome.scm (item-event): Print grob id.
16628 (save-tweaks): New function.
16629 (tweak): New funtion.
16630 (item-event): Use it, bound to arrow keys.
16632 * lily/context-property.cc (make_item_from_properties): Register grob.
16633 * lily/context.cc (add_context): Register context.
16635 * lily/include/context-selector.hh:
16636 * lily/include/grob-selector.hh:
16637 * lily/context-selector.cc:
16638 * lily/grob-selector.cc: New file.
16640 2004-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
16642 * lily/slur.cc: add 'positions to interface
16644 * lily/main.cc: reinstate PS as standard output format.
16646 * scm/framework-tex.scm (output-preview-framework): print systems
16647 up to first non title system.
16649 * lily/grace-engraver.cc (start_translation_timestep): split
16652 2004-11-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
16654 * lily/quote-iterator.cc (Module): remove old quote-iterator
16656 * scm/define-music-types.scm (music-descriptions): move
16657 NewQuoteMusic over QuoteMusic
16659 * Documentation/user/notation.itely (Formatting cue notes): use
16662 * lily/new-quote-iterator.cc (quote_ok): new function.
16664 * input/regression/quote-cue-during.ly: new file.
16666 * input/regression/quote-grace.ly: new file.
16668 * scm/define-context-properties.scm (Module): change definition of
16671 * lily/context-property.cc (Module): rename from
16672 translator-property.cc
16674 * lily/context.cc (context_name_symbol): new function
16676 * lily/grace-engraver.cc: new file. Set properties for grobs based
16677 on the grace-ness of now_moment().
16679 * scm/music-functions.scm (add-grace-property): use list
16680 iso. vector for graceSettings
16681 remove set-{start,stop}-grace-properties.
16683 * lily/new-quote-iterator.cc (construct_children): set
16684 quote_outlet_ if no quoted-context-{id,type} specified.
16686 * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16688 * lily/parser.yy (command_element): remove \quote.
16690 * ly/music-functions-init.ly (location): add quoteDuring music
16693 * lily/lexer.ll: allow \encoding in lyrics as well. Remove
16694 optional semicolon. (backportme)
16696 2004-11-06 Jan Nieuwenhuizen <janneke@gnu.org>
16698 * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16699 need to link to GUILE et al.
16701 2004-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
16703 * scm/define-music-properties.scm (all-music-properties): add
16704 quoted-context-type, quoted-context-id.
16706 * scm/lily.scm (type-check-list): new function.
16708 * scm/lily-library.scm: new file. Generic library routines.
16710 * lily/parser.yy (Generic_prefix_music): move typechecking out of
16713 * ly/music-functions-init.ly: add quoteDuring function.
16715 * lily/include/music-iterator.hh (class Music_iterator): rename
16716 set_translator -> set_context
16718 * lily/parser.yy (Generic_prefix_music_scm): add
16719 MUSIC_FUNCTION_SCM_SCM_MUSIC
16721 * scm/lily.scm (sanitize-command-option): new function. (backportme)
16723 * scm/framework-tex.scm (header): sanitize TeX paper size.
16726 2004-11-06 Jan Nieuwenhuizen <janneke@gnu.org>
16728 * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16730 * tex/lilyponddefs.tex: If no inputencoding use latin1. (backportme)
16732 * scm/framework-tex.scm (font-load-command): Use T1 if no
16733 font-encoding set. (backportme)
16735 * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16736 exists before converting. (backportme)
16738 * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16739 exists before converting. (backportme)
16740 (convert-to-ps): Remove .ps file if it exists before
16741 converting. (backportme)
16743 * lily/lexer.ll: Remove extra progress newline, use present tense.
16745 * scm/paper.scm (paper-alist): public.
16746 * scm/framework-tex.scm (convert-to-ps):
16747 * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16750 2004-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
16752 * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16754 * lily/recording-group-engraver.cc (derived_mark): mark
16755 now_events_. (backportme)
16757 2004-11-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
16759 * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16761 * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16762 invoking latex. (backportme.)
16764 * lily/stem.cc (off_callback): center stems for all rest stems.
16766 2004-11-05 Werner Lemberg <wl@gnu.org>
16768 * Documentation/user/lilypond.tely: Add more guidelines for writing
16769 lilypond texinfo documents.
16771 2004-11-05 Heikki Junes <hjunes@cc.hut.fi>
16773 * Documentation/index.html.in: remove <hr>.
16775 * THANKS: change 2.3 to 2.4.
16777 2004-11-05 Jan Nieuwenhuizen <jannneke@gnu.org>
16779 * scm/output-gnome.scm: More fontconfig comment.
16781 2004-11-05 Pedro Kroger <kroeger@pedrokroeger.net>
16783 * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16784 <package> directory in $(builddir)/share according with
16785 PACKAGE_NAME defined in the VERSION file.
16787 2004-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
16789 * lily/beam.cc (rest_collision_callback): use local beam
16792 * input/regression/stem-stemlet.ly: new file.
16794 * lily/stem.cc (add_head): store rests as well.
16796 * scm/define-grob-properties.scm (all-user-grob-properties): add
16799 * lily/stem.cc: store rests as well.
16801 * input/regression/new-slur.ly: mention forcing.
16803 2004-11-04 Werner Lemberg <wl@gnu.org>
16805 * Documentation/user/*: A new round of layout fixes and document
16808 2004-11-04 Heikki Junes <hjunes@cc.hut.fi>
16810 * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16812 2004-11-04 Jan Nieuwenhuizen <janneke@gnu.org>
16814 * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16816 2004-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
16818 * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16820 * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16822 * lily/main.cc (main): Invoke identify.
16824 * scm/lily.scm (postscript->pdf): Remove progress newline.
16825 Write progress to stderr.
16827 * lily/paper-book.cc (output): Remove progress newline.
16829 * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16830 gettext on user messages, and remove whitespace.
16832 * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16834 * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16835 argv[0] (Thomas Scharkowski).
16837 * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16838 call (carlyannehorse). Also check for mf and mf-nowin. Add check
16839 for ec-fonts-mtraced.
16841 * GNUmakefile.in (builddir-exec): Add symlink tex/out. Fixes
16842 --srcdir build (Bertalan).
16844 * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16845 headers and library too (Laura Conrad).
16847 * Documentation/topdocs/INSTALL.texi (Top): Mention development
16848 package for guile too (Laura Conrad).
16850 * lily/main.cc (usage): Typo.
16852 2004-11-02 Werner Lemberg <wl@gnu.org>
16854 * Documentation/user/notation.ly: More fixes to improve appearance.
16856 * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16857 better output for multicolumn tables.
16859 2004-11-01 Mats Bengtsson <mabe@s3.kth.se>
16861 * lily/main.cc (dir_info): Fixed typo in the printouts.
16863 2004-11-01 Werner Lemberg <wl@gnu.org>
16865 * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16867 Set `per_line' to 2; replace hard-coded value with it.
16869 * Documentation/user/*: Many fixes to improve appearance of
16872 2004-11-01 Werner Lemberg <wl@gnu.org>
16874 * Documentation/user/changing-defaults.itely,
16875 Documentation/user/notation.ly,
16876 Documentation/user/programming-interface.itely: Use @/.
16877 Fix formatting of some lilypond snippets and tables.
16879 * scripts/lilypond-book.py (compose_ly): Provide useful default
16880 for LINEWIDTH in `override'.
16882 2004-10-31 Graham Percival <gperlist@shaw.ca>
16884 * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16886 2004-10-31 Werner Lemberg <wl@gnu.org>
16888 Resetting @exampleindent to `5' gives ugly results with texinfo's
16889 DVI output. Use `@format @exampleindent 0 ... @end format' instead
16890 (if not quoting) to change @exampleindent only locally.
16892 * scripts/lilypond-book.py (NOQUOTE): New variable.
16893 (output) [LATEX]: Remove AFTER and BEFORE.
16894 [TEXINFO]: Remove AFTER and BEFORE.
16895 Fix QUOTE and VERBATIM pattern.
16896 Add NOQUOTE pattern.
16897 (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16899 [output_texinfo]: Use NOQUOTE.
16901 2004-10-31 Graham Percival <gperlist@shaw.ca>
16903 * Documentation/user/changing-defaults.itely: clarify paper
16904 size commands with correct info.
16906 * Documentation/user/lilypond-book.itely: add more docs for
16907 filename extensions.
16909 2004-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
16911 * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16912 (PATCH_LEVEL): start 2.5.0.