[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Issue 2026 in lilypond: Make markup utility definitions available vi
From: |
lilypond |
Subject: |
Re: Issue 2026 in lilypond: Make markup utility definitions available via new (scm markup-utility-defs) scheme module |
Date: |
Thu, 12 Jan 2012 00:08:49 +0000 |
Updates:
Status: Started
Labels: Patch-needs_work
Comment #32 on issue 2026 by address@hidden: Make markup utility
definitions available via new (scm markup-utility-defs) scheme module
http://code.google.com/p/lilypond/issues/detail?id=2026
Caused docs build to fail in Documentation/ly-examples/chart.ly.
Apparently fails in a markup? call. I had added code to lily.scm to handle
throws from the markup code and this showed up as 'unbound variable
empty-markup. Further fettling of the handling code and a change to using
the detailed markup-thrower-typecheck for markup? showed the problem that
the markup? predicate couldn't cope with processing a (0 . 0) pair.
It turns out we have had a lurking bug in define-markup-commands.scm caused
by this
code:
(define-public (empty-markup)
(make-simple-markup ""))
This was working as long as we were basically turning a blind eye to throws
in the run-time guile procedures in lily.scm. As soon as we started
catching throws other than 'ly-failed-file, errors from this procedure
surfaced. 'empty-markup' is used in lots of places in chord-processing
fretboard and tablature code scheme code. This is fixed if we move the
definition of the \null markup to the before the empty-markup declaration
and change empty-markup to
(define-public (empty-markup)
make-null-markup))
I've tested this with a minimal changes patch on a branch from master which
I've attached. It's built the docs successfully and run reg-tests OK.
I've attached a patch-file.
I'll merge these changes into my local T2026 branch and upload an amended
patch-set to Rietveld for review.
Cheers, Ian
Attachments:
0001-T2026-1-minimal-fix-for-T2026.patch 6.5 KB