programming error messages and normal error messages. Errors written
by the @code{error ()} function will cause LilyPond to exit immediately,
errors by @code{Input::error ()} will continue the compilation, but
programming error messages and normal error messages. Errors written
by the @code{error ()} function will cause LilyPond to exit immediately,
errors by @code{Input::error ()} will continue the compilation, but
-return a non-zero return value of the lilypond call (i.e. indicate an
-unsuccessful program execution). All other errors will be printed on the
+return a non-zero return value of the LilyPond call (i.e. indicate an
+unsuccessful program execution). All other errors will be printed on the
console, but not exit LilyPond or indicate an unsuccessful return code.
Their only differences to a warnings are the displayed text and that
they will be shown with loglevel @code{ERROR}.
console, but not exit LilyPond or indicate an unsuccessful return code.
Their only differences to a warnings are the displayed text and that
they will be shown with loglevel @code{ERROR}.
The most commonly used tool for debugging LilyPond is the GNU
debugger gdb. The gdb tool is used for investigating and debugging
The most commonly used tool for debugging LilyPond is the GNU
debugger gdb. The gdb tool is used for investigating and debugging
debugging Scheme code using the Guile debugger. This section
describes how to use both gdb and the Guile Debugger.
debugging Scheme code using the Guile debugger. This section
describes how to use both gdb and the Guile Debugger.
debugging information it will have been written to a location in a
subfolder of your current working directory:
debugging information it will have been written to a location in a
subfolder of your current working directory:
grobs and symbols that should be tracked. An example of this
is found in @file{input/regression/graphviz.ly}.
grobs and symbols that should be tracked. An example of this
is found in @file{input/regression/graphviz.ly}.
output data. Delete everything from the beginning of the file
up to but not including the first occurrence of @code{digraph}.
output data. Delete everything from the beginning of the file
up to but not including the first occurrence of @code{digraph}.
than normal. The original configuration can be restored by rerunning
@code{./configure} with @option{--disable-checking}. Then
than normal. The original configuration can be restored by rerunning
@code{./configure} with @option{--disable-checking}. Then
@subsection Manually update documentation
Where the convert-ly rule is not able to automatically update the inline
@subsection Manually update documentation
Where the convert-ly rule is not able to automatically update the inline
documentation must be manually updated. The inline snippets that require
changing must be changed in the English version of the docs and all
translated versions. If the inline code is not changed in the
documentation must be manually updated. The inline snippets that require
changing must be changed in the English version of the docs and all
translated versions. If the inline code is not changed in the
@node How purity is defined and stored
@subsection How purity is defined and stored
Purity is defined in LilyPond with the creation of an unpure-pure container
@node How purity is defined and stored
@subsection How purity is defined and stored
Purity is defined in LilyPond with the creation of an unpure-pure container
This implemented using modules, with each scope being an anonymous
module that imports its enclosing scope's module.
This implemented using modules, with each scope being an anonymous
module that imports its enclosing scope's module.
Return @code{true} if @var{b} is @code{SCM_BOOL_T}, else return @code{false}.
This should be used instead of @code{scm_is_true} and
Return @code{true} if @var{b} is @code{SCM_BOOL_T}, else return @code{false}.
This should be used instead of @code{scm_is_true} and
are read as an empty list, and by convention unset Boolean properties
default to false. Since both @code{scm_is_true} and
@code{scm_is_false} only compare with @code{##f} in line with what
are read as an empty list, and by convention unset Boolean properties
default to false. Since both @code{scm_is_true} and
@code{scm_is_false} only compare with @code{##f} in line with what
Test whether the type of @var{s} is [type].
[type] is a LilyPond-only set of values (direction, axis...). More
Test whether the type of @var{s} is [type].
[type] is a LilyPond-only set of values (direction, axis...). More