LY_DEFINE (ly_reset_all_fonts, "ly:reset-all-fonts", 0, 0, 0,
(),
- "Forget all about previously loaded fonts. ")
+ "Forget all about previously loaded fonts.")
{
delete all_fonts_global;
all_fonts_global = new All_font_metrics (global_path.to_string ());
LY_DEFINE (ly_font_load, "ly:font-load", 1, 0, 0,
(SCM name),
- "Load the font @var{name}. ")
+ "Load the font @var{name}.")
{
LY_ASSERT_TYPE (scm_is_string, name, 1);
LY_DEFINE (ly_relative_group_extent, "ly:relative-group-extent",
3, 0, 0, (SCM elements, SCM common, SCM axis),
- "Determine the extent of @var{elements} relative to @var{common} in the "
- "@var{axis} direction.")
+ "Determine the extent of @var{elements} relative to @var{common} in the"
+ " @var{axis} direction.")
{
Grob_array *ga = unsmob_grob_array (elements);
LY_DEFINE (ly_make_book, "ly:make-book",
2, 0, 1, (SCM paper, SCM header, SCM scores),
- "Make a \\book of @var{paper} and @var{header} (which may be #f as well) "
- "containing @code{\\scores}.")
+ "Make a @code{\\book} of @var{paper} and @var{header}"
+ " (which may be @code{#f} as well) containing @code{\\scores}.")
{
Output_def *odef = unsmob_output_def (paper);
LY_ASSERT_SMOB (Output_def, paper, 1);
SCM default_paper,
SCM default_layout,
SCM output),
- "Print book. @var{output} is passed to the backend unchanged. "
- "Eg. it may be "
- "a string (for file based outputs) or a socket (for network based "
- "output).")
+ "Print book. @var{output} is passed to the backend unchanged."
+ " For example, it may be a string (for file based outputs)"
+ " or a socket (for network based output).")
{
Book *book = unsmob_book (book_smob);
SCM default_paper,
SCM default_layout,
SCM output),
- "Print book. @var{output} is passed to the backend unchanged. "
- "Eg. it may be "
- "a string (for file based outputs) or a socket (for network based "
- "output).")
+ "Print book. @var{output} is passed to the backend unchanged."
+ " For example, it may be a string (for file based outputs)"
+ " or a socket (for network based output).")
{
LY_ASSERT_SMOB (Book, book_smob, 1);
LY_ASSERT_SMOB (Output_def, default_paper, 2);
LY_DEFINE (ly_book_add_score_x, "ly:book-add-score!",
2, 0, 0, (SCM book_smob, SCM score),
- "Add @var{score} to @var{book_smob} score list.")
+ "Add @var{score} to @var{book-smob} score list.")
{
LY_ASSERT_SMOB (Book, book_smob, 1);
Book *book = unsmob_book (book_smob);
LY_DEFINE (ly_context_id, "ly:context-id",
1, 0, 0, (SCM context),
- "Return the id string of @var{context}, "
- "i.e. for @code{\\context Voice = one .. } "
- "return the string @code{one}.")
+ "Return the ID string of @var{context},"
+ " i.e., for @code{\\context Voice = one @dots{}}"
+ " return the string @code{one}.")
{
Context *tr = unsmob_context (context);
LY_DEFINE (ly_context_name, "ly:context-name",
1, 0, 0, (SCM context),
- "Return the name of @var{context}, "
- "i.e. for @code{\\context Voice = one .. } "
- "return the symbol @code{Voice}.")
+ "Return the name of @var{context},"
+ " i.e., for @code{\\context Voice = one @dots{}}"
+ " return the symbol @code{Voice}.")
{
LY_ASSERT_SMOB (Context, context, 1);
LY_DEFINE (ly_context_grob_definition, "ly:context-grob-definition",
2, 0, 0, (SCM context, SCM name),
- "Return the definition of @var{name} (a symbol) within @var{context} "
- "as an alist")
+ "Return the definition of @var{name} (a symbol) within"
+ " @var{context} as an alist.")
{
Context *tr = unsmob_context (context);
LY_DEFINE (ly_context_pushpop_property, "ly:context-pushpop-property",
3, 1, 0, (SCM context, SCM grob, SCM eltprop, SCM val),
- "Do a single @code{\\override} or @code{\\revert} operation "
- "in @var{context}. The grob definition @code{grob} is extended "
- "with @code{eltprop} (if @var{val} is specified) "
- "or reverted (if unspecified).")
+ "Do a single @code{\\override} or @code{\\revert} operation"
+ " in @var{context}. The grob definition @var{grob} is extended"
+ " with @var{eltprop} (if @var{val} is specified) or reverted"
+ " (if unspecified).")
{
Context *tg = unsmob_context (context);
LY_DEFINE (ly_context_property, "ly:context-property",
2, 0, 0, (SCM c, SCM name),
- "Return the value of @var{name} from context @var{c}")
+ "Return the value of @var{name} from context @var{c}.")
{
LY_ASSERT_SMOB (Context, c, 1);
LY_ASSERT_TYPE (ly_is_symbol, name, 2);
LY_DEFINE (ly_context_set_property_x, "ly:context-set-property!",
3, 0, 0, (SCM context, SCM name, SCM val),
- "Set value of property @var{name} in context @var{context} "
- "to @var{val}.")
+ "Set value of property @var{name} in context @var{context}"
+ " to @var{val}.")
{
LY_ASSERT_SMOB (Context, context, 1);
LY_ASSERT_TYPE (ly_is_symbol, name, 2);
LY_DEFINE (ly_context_property_where_defined, "ly:context-property-where-defined",
2, 0, 0, (SCM context, SCM name),
- "Return the context above @var{context} "
- "where @var{name} is defined.")
+ "Return the context above @var{context}"
+ " where @var{name} is defined.")
{
LY_ASSERT_SMOB (Context, context, 1);
LY_ASSERT_TYPE (ly_is_symbol, name, 2);
/* FIXME: todo: should support translator IDs, and creation? */
LY_DEFINE (ly_context_find, "ly:context-find",
2, 0, 0, (SCM context, SCM name),
- "Find a parent of @var{context} that has name or alias @var{name}. "
- "Return @code{#f} if not found.")
+ "Find a parent of @var{context} that has name or alias @var{name}."
+ " Return @code{#f} if not found.")
{
LY_ASSERT_SMOB (Context, context, 1);
LY_ASSERT_TYPE (ly_is_symbol, name, 2);
LY_DEFINE (ly_context_now, "ly:context-now",
1, 0, 0, (SCM context),
- "Return now-moment of context CONTEXT")
+ "Return @code{now-moment} of context @var{context}.")
{
LY_ASSERT_SMOB (Context, context, 1);
Context *ctx = unsmob_context (context);
LY_DEFINE (ly_context_event_source, "ly:context-event-source",
1, 0, 0, (SCM context),
- "Return event-source of context CONTEXT")
+ "Return @code{event-source} of context @var{context}.")
{
LY_ASSERT_SMOB (Context, context, 1);
Context *ctx = unsmob_context (context);
LY_DEFINE (ly_context_events_below, "ly:context-events-below",
1, 0, 0, (SCM context),
- "Return a stream-distributor that distributes all events\n"
+ "Return a @code{stream-distributor} that distributes all events"
" from @var{context} and all its subcontexts.")
{
LY_ASSERT_SMOB (Context, context, 1);
LY_DEFINE (ly_pt, "ly:pt",
1, 0, 0, (SCM num),
- "@var{num} printer points")
+ "@var{num} printer points.")
{
LY_ASSERT_TYPE (scm_is_number, num, 1);
return scm_from_double (point_constant
LY_DEFINE (ly_cm, "ly:cm",
1, 0, 0, (SCM num),
- "@var{num} cm")
+ "@var{num} cm.")
{
LY_ASSERT_TYPE (scm_is_number, num, 1);
return scm_from_double (cm_constant
LY_DEFINE (ly_inch, "ly:inch",
1, 0, 0, (SCM num),
- "@var{num} inches")
+ "@var{num} inches.")
{
LY_ASSERT_TYPE (scm_is_number, num, 1);
return scm_from_double (inch_constant
LY_DEFINE (ly_mm, "ly:mm",
1, 0, 0, (SCM num),
- "@var{num} mm")
+ "@var{num} mm.")
{
LY_ASSERT_TYPE (scm_is_number, num, 1);
return scm_from_double (mm_constant
LY_DEFINE (ly_bp, "ly:bp",
1, 0, 0, (SCM num),
- "@var{num} bigpoints (1/72th inch)")
+ "@var{num} bigpoints (1/72th inch).")
{
LY_ASSERT_TYPE (scm_is_number, num, 1);
return scm_from_double (bigpoint_constant
LY_DEFINE (ly_make_dispatcher, "ly:make-dispatcher",
0, 0, 0, (),
- "Returns a newly created dispatcher.")
+ "Return a newly created dispatcher.")
{
return (new Dispatcher ())->unprotect ();
}
LY_DEFINE (ly_connect_dispatchers, "ly:connect-dispatchers",
2, 0, 0, (SCM to, SCM from),
- "Makes the dispatcher @var{to} listen to events from @var{from}." )
+ "Make the dispatcher @var{to} listen to events from @var{from}.")
{
Dispatcher *t = unsmob_dispatcher (to);
Dispatcher *f = unsmob_dispatcher (from);
LY_DEFINE (ly_add_listener, "ly:add-listener",
2, 0, 1, (SCM list, SCM disp, SCM cl),
- "Adds the listener @var{list} to the dispatcher @var{disp}.\n"
- " Whenever @var{disp} hears an event of class @var{cl}, it will be forwarded to @var{list}.\n" )
+ "Add the listener @var{list} to the dispatcher @var{disp}."
+ " Whenever @var{disp} hears an event of class @var{cl},"
+ " it is forwarded to @var{list}.")
{
Listener *l = unsmob_listener (list);
Dispatcher *d = unsmob_dispatcher (disp);
LY_DEFINE (ly_broadcast, "ly:broadcast",
2, 0, 0, (SCM disp, SCM ev),
- "Sends the stream event @var{ev} to the dispatcher\n"
- "@var{disp}.")
+ "Send the stream event @var{ev} to the dispatcher @var{disp}.")
{
Dispatcher *d = unsmob_dispatcher (disp);
Stream_event *e = unsmob_stream_event (ev);
LY_DEFINE (ly_make_duration, "ly:make-duration",
1, 3, 0, (SCM length, SCM dotcount, SCM num, SCM den),
- "@var{length} is the negative logarithm (base 2) of the duration:\n"
- "1 is a half note, 2 is a quarter note, 3 is an eighth\n"
- "note, etc. The number of dots after the note is given by\n"
- "the optional argument @var{dotcount}.\n"
+ "@var{length} is the negative logarithm (base 2) of the duration:"
+ " 1@tie{}is a half note, 2@tie{}is a quarter note, 3@tie{}is an"
+ " eighth note, etc. The number of dots after the note is given by"
+ " the optional argument @var{dotcount}.\n"
"\n"
- "The duration factor is optionally given by @var{num}\n"
- "and @var{den}.\n\n"
- "A duration is a musical duration, "
- "i.e. a length of time described by a power of two "
- "(whole, half, quarter, etc.) and a number of augmentation\n"
- "dots. \n")
+ "The duration factor is optionally given by @var{num} and"
+ " @var{den}.\n"
+ "\n"
+ "A duration is a musical duration, i.e., a length of time"
+ " described by a power of two (whole, half, quarter, etc.) and a"
+ " number of augmentation dots.")
{
LY_ASSERT_TYPE (scm_is_integer, length, 1);
LY_DEFINE (ly_duration_log, "ly:duration-log",
1, 0, 0, (SCM dur),
- "Extract the duration log from @var{dur}")
+ "Extract the duration log from @var{dur}.")
{
LY_ASSERT_SMOB (Duration, dur, 1);
return scm_from_int (unsmob_duration (dur)->duration_log ());
LY_DEFINE (ly_duration_dot_count, "ly:duration-dot-count",
1, 0, 0, (SCM dur),
- "Extract the dot count from @var{dur}")
+ "Extract the dot count from @var{dur}.")
{
LY_ASSERT_SMOB (Duration, dur, 1);
return scm_from_int (unsmob_duration (dur)->dot_count ());
LY_DEFINE (ly_duration_length, "ly:duration-length",
1, 0, 0, (SCM dur),
- "The length of the duration as a Moment.")
+ "The length of the duration as a @code{moment}.")
{
LY_ASSERT_SMOB (Duration, dur, 1);
return Moment (unsmob_duration (dur)->get_length ()).smobbed_copy ();
LY_DEFINE (ly_duration_2_string, "ly:duration->string",
1, 0, 0, (SCM dur),
- "Convert @var{dur} to string.")
+ "Convert @var{dur} to a string.")
{
LY_ASSERT_SMOB (Duration, dur, 1);
return ly_string2scm (unsmob_duration (dur)->to_string ());
LY_DEFINE (ly_duration_factor, "ly:duration-factor",
1, 0, 0, (SCM dur),
- "Extract the compression factor from @var{dur}. Return as a pair.")
+ "Extract the compression factor from @var{dur}."
+ " Return it as a pair.")
{
LY_ASSERT_SMOB (Duration, dur, 1);
Rational r = unsmob_duration (dur)->factor ();
static SCM creation_callback = SCM_EOL;
LY_DEFINE (ly_set_grob_creation_callback, "ly:set-grob-creation-callback",
1, 0, 0, (SCM cb),
- "Specify a procedure that will be called every time a new grob "
- "is created. The callback will receive as arguments the grob "
- "that was created, the name of the C++ source file that caused "
- "the grob to be created and the corresponding line number in the "
- "C++ source file.")
+ "Specify a procedure that will be called every time a new grob"
+ " is created. The callback will receive as arguments the grob"
+ " that was created, the name of the C++ source file that caused"
+ " the grob to be created, and the corresponding line number in"
+ " the C++ source file.")
{
LY_ASSERT_TYPE (ly_is_procedure, cb, 1);
LY_DEFINE (ly_add_file_name_alist, "ly:add-file-name-alist",
1, 0, 0, (SCM alist),
- "Add mappings for error messages from specified alist")
+ "Add mappings for error messages from @var{alist}.")
{
for (SCM s = alist; scm_is_pair (s); s = scm_cdr (s))
{
LY_DEFINE (ly_font_config_get_font_file, "ly:font-config-get-font-file", 1, 0, 0,
(SCM name),
- "Get the file for font @var{name}")
+ "Get the file for font @var{name}.")
{
LY_ASSERT_TYPE (scm_is_string, name, 1);
LY_DEFINE (ly_font_get_glyph, "ly:font-get-glyph",
2, 0, 0,
(SCM font, SCM name),
- "Return a Stencil from @var{font} for the glyph named @var{name}. "
- "@var{font} must be available as an AFM file. If the glyph "
- "is not available, return @code{#f}.")
+ "Return a stencil from @var{font} for the glyph named @var{name}."
+ " @var{font} must be available as an AFM file. If the glyph"
+ " is not available, return @code{#f}.")
{
Font_metric *fm = unsmob_metrics (font);
LY_ASSERT_SMOB (Font_metric, font, 1);
LY_DEFINE (ly_get_glyph, "ly:get-glyph",
2, 0, 0,
(SCM font, SCM index),
- "Retrieve a Stencil for the glyph numbered @var{index} "
- "in @var{font}.")
+ "Retrieve a stencil for the glyph numbered @var{index}"
+ " in @var{font}.")
{
Font_metric *fm = unsmob_metrics (font);
LY_ASSERT_SMOB (Font_metric, font, 1);
LY_DEFINE (ly_font_index_to_charcode, "ly:font-index-to-charcode",
2, 0, 0,
(SCM font, SCM index),
- "Return the character code for @var{index} @var{font}.")
+ "Return the character code for @var{index} in @var{font}.")
{
Font_metric *fm = unsmob_metrics (font);
LY_ASSERT_SMOB (Font_metric, font, 1);
LY_DEFINE (ly_text_dimension, "ly:text-dimension",
2, 0, 0,
(SCM font, SCM text),
- "Given the font metric in @var{font} and the string @var{text}, "
- "compute the extents of that text in that font. "
- "The return value is a pair of number-pairs.")
+ "Given the font metric in @var{font} and the string @var{text},"
+ " compute the extents of that text in that font. The return"
+ " value is a pair of number-pairs.")
{
Box b;
Modified_font_metric *fm = dynamic_cast<Modified_font_metric *>
LY_DEFINE (ly_font_file_name, "ly:font-file-name",
1, 0, 0,
(SCM font),
- "Given the font metric @var{font}, "
- "return the corresponding file name.")
+ "Given the font metric @var{font},"
+ " return the corresponding file name.")
{
LY_ASSERT_SMOB (Font_metric, font, 1);
LY_DEFINE (ly_font_name, "ly:font-name",
1, 0, 0,
(SCM font),
- "Given the font metric @var{font}, "
- "return the corresponding name.")
+ "Given the font metric @var{font},"
+ " return the corresponding name.")
{
LY_ASSERT_SMOB (Font_metric, font, 1);
Font_metric *fm = unsmob_metrics (font);
LY_DEFINE (ly_font_magnification, "ly:font-magnification", 1, 0, 0,
(SCM font),
- "Given the font metric @var{font}, return the "
- "magnification, relative to the current output-scale.")
+ "Given the font metric @var{font}, return the"
+ " magnification, relative to the current output-scale.")
{
LY_ASSERT_SMOB (Font_metric, font, 1);
LY_DEFINE (ly_font_design_size, "ly:font-design-size", 1, 0, 0,
(SCM font),
- "Given the font metric @var{font}, return the "
- "design size, relative to the current output-scale.")
+ "Given the font metric @var{font}, return the"
+ " design size, relative to the current output-scale.")
{
LY_ASSERT_SMOB (Font_metric, font, 1);
LY_DEFINE (ly_get_all_function_documentation, "ly:get-all-function-documentation",
0, 0, 0, (),
- "Get a hash table with all lilypond Scheme extension functions.")
+ "Get a hash table with all LilyPond Scheme extension functions.")
{
return doc_hash_table;
}
LY_DEFINE (ly_start_environment, "ly:start-environment",
0, 0, 0, (),
- "Return the environment, a list of strings, that was in effect at program start")
+ "Return the environment (a list of strings) that was in"
+ " effect at program start.")
{
SCM l = SCM_EOL;
SCM *tail = &l;
LY_DEFINE (ly_find_file, "ly:find-file",
1, 0, 0, (SCM name),
- "Return the absolute file name of @var{name}, "
- "or @code{#f} if not found.")
+ "Return the absolute file name of @var{name},"
+ " or @code{#f} if not found.")
{
LY_ASSERT_TYPE (scm_is_string, name, 1);
*/
LY_DEFINE (ly_gulp_file, "ly:gulp-file",
1, 1, 0, (SCM name, SCM size),
- "Read the file @var{name}, and return its contents in a string. "
- "The file is looked up using the search path. ")
+ "Read the file @var{name}, and return its contents in a string."
+ " The file is looked up using the search path.")
{
LY_ASSERT_TYPE (scm_is_string, name, 1);
int sz = INT_MAX;
LY_DEFINE (ly_error, "ly:error",
1, 0, 1, (SCM str, SCM rest),
- "Scheme callable function to issue the error @code{msg}. "
- "The error is formatted with @code{format} and @code{rest}.")
+ "A Scheme callable function to issue the error @var{str}."
+ " The error is formatted with @code{format} and @var{rest}.")
{
LY_ASSERT_TYPE (scm_is_string, str, 1);
str = scm_simple_format (SCM_BOOL_F, str, rest);
LY_DEFINE (ly_message, "ly:message",
1, 0, 1, (SCM str, SCM rest),
- "Scheme callable function to issue the message @code{msg}. "
- "The message is formatted with @code{format} and @code{rest}.")
+ "A Scheme callable function to issue the message @var{str}."
+ " The message is formatted with @code{format} and @var{rest}.")
{
LY_ASSERT_TYPE (scm_is_string, str, 1);
str = scm_simple_format (SCM_BOOL_F, str, rest);
LY_DEFINE (ly_progress, "ly:progress",
1, 0, 1, (SCM str, SCM rest),
- "Scheme callable function to print progress @code{str}. "
- "The message is formatted with @code{format} and @code{rest}.")
+ "A Scheme callable function to print progress @var{str}."
+ " The message is formatted with @code{format} and @var{rest}.")
{
LY_ASSERT_TYPE (scm_is_string, str, 1);
str = scm_simple_format (SCM_BOOL_F, str, rest);
LY_DEFINE (ly_programming_error, "ly:programming-error",
1, 0, 1, (SCM str, SCM rest),
- "Scheme callable function to issue the warning @code{msg}. "
- "The message is formatted with @code{format} and @code{rest}.")
+ "A Scheme callable function to issue the internal warning"
+ " @var{str}. The message is formatted with @code{format}"
+ " and @var{rest}.")
{
LY_ASSERT_TYPE (scm_is_string, str, 1);
str = scm_simple_format (SCM_BOOL_F, str, rest);
LY_DEFINE (ly_warning, "ly:warning",
1, 0, 1, (SCM str, SCM rest),
- "Scheme callable function to issue the warning @code{str}. "
- "The message is formatted with @code{format} and @code{rest}.")
+ "A Scheme callable function to issue the warning @code{str}."
+ " The message is formatted with @code{format} and @code{rest}.")
{
LY_ASSERT_TYPE (scm_is_string, str, 1);
str = scm_simple_format (SCM_BOOL_F, str, rest);
LY_DEFINE (ly_dir_p, "ly:dir?",
1, 0, 0, (SCM s),
- "type predicate. A direction is @code{-1}, @code{0} or "
- "@code{1}, where @code{-1} represents "
- "left or down and @code{1} represents right or up.")
+ "A type predicate. The direction@tie{}@code{s} is @code{-1},"
+ " @code{0} or@tie{}@code{1}, where @code{-1} represents"
+ " left or down and @code{1} represents right or up.")
{
if (scm_is_number (s))
{
LY_DEFINE (ly_assoc_get, "ly:assoc-get",
2, 1, 0,
(SCM key, SCM alist, SCM default_value),
- "Return value if KEY in ALIST, else DEFAULT-VALUE "
- "(or #f if not specified).")
+ "Return value if @var{key} in @var{alist}, else @code{default-value}"
+ " (or @code{#f} if not specified).")
{
LY_ASSERT_TYPE(ly_cheap_is_list, alist, 2);
LY_DEFINE (ly_string_substitute, "ly:string-substitute",
3, 0, 0, (SCM a, SCM b, SCM s),
- "Replace string @var{a} by string @var{b} in string @var{s}.")
+ "Replace string@tie{}@var{a} by string@tie{}@var{b} in"
+ " string@tie{}@var{s}.")
{
LY_ASSERT_TYPE (scm_is_string, s, 1);
LY_ASSERT_TYPE (scm_is_string, b, 2);
}
LY_DEFINE (ly_version, "ly:version", 0, 0, 0, (),
- "Return the current lilypond version as a list, e.g. @code{(1 3 127 uu1)}. ")
+ "Return the current lilypond version as a list, e.g.,"
+ " @code{(1 3 127 uu1)}.")
{
char const *vs = "\'(" MAJOR_VERSION " " MINOR_VERSION " " PATCH_LEVEL " " MY_PATCH_LEVEL ")";
}
LY_DEFINE (ly_dimension_p, "ly:dimension?", 1, 0, 0, (SCM d),
- "Return @var{d} is a number. Used to distinguish length "
- "variables from normal numbers.")
+ "Return @var{d} as a number. Used to distinguish length"
+ " variables from normal numbers.")
{
return scm_number_p (d);
}
LY_DEFINE (ly_gettext, "ly:gettext",
1, 0, 0, (SCM string),
- "Gettext wrapper.")
+ "A Scheme wrapper function for @code{gettext}.")
{
LY_ASSERT_TYPE (scm_is_string, string, 1);
return ly_string2scm (_ (scm_i_string_chars (string)));
LY_DEFINE (ly_output_formats, "ly:output-formats",
0, 0, 0, (),
- "Formats passed to --format as a list of strings, "
- "used for the output.")
+ "Formats passed to @option{--format} as a list of strings,"
+ " used for the output.")
{
vector<string> output_formats = string_split (output_format_global, ',');
LY_DEFINE (ly_wide_char_2_utf_8, "ly:wide-char->utf-8",
1, 0, 0, (SCM wc),
- "Encode the Unicode codepoint @var{wc}, an integer, as UTF-8")
+ "Encode the Unicode codepoint @var{wc}, an integer, as UTF-8.")
{
char buf[5];
LY_DEFINE (ly_chain_assoc_get, "ly:chain-assoc-get",
2, 1, 0, (SCM key, SCM achain, SCM dfault),
- "Return value for @var{key} from a list of alists @var{achain}. "
- "If no if no entry is found, return DFAULT, "
- "or #f if no DFAULT not specified.")
+ "Return value for @var{key} from a list of alists @var{achain}."
+ " If no entry is found, return @var{dfault} or @code{#f} if no"
+ " @var{dfault} is specified.")
{
if (scm_is_pair (achain))
{
LY_DEFINE (ly_stderr_redirect, "ly:stderr-redirect",
1, 1, 0, (SCM file_name, SCM mode),
- "Redirect stderr to FILE-NAME, opened with MODE.")
+ "Redirect stderr to @var{file-name}, opened with @var{mode}.")
{
LY_ASSERT_TYPE (scm_is_string, file_name, 1);
LY_DEFINE (ly_hash_table_keys, "ly:hash-table-keys",
1,0,0, (SCM tab),
- "return a list of keys in @var{tab}")
+ "Return a list of keys in @var{tab}.")
{
return scm_internal_hash_fold ((Hash_closure_function) & accumulate_symbol,
NULL, SCM_EOL, tab);
LY_DEFINE (ly_camel_case_2_lisp_identifier, "ly:camel-case->lisp-identifier",
1, 0, 0, (SCM name_sym),
- "Convert FooBar_Bla to foo-bar-bla style symbol.")
+ "Convert @code{FooBar_Bla} to @code{foo-bar-bla} style symbol.")
{
LY_ASSERT_TYPE (ly_is_symbol, name_sym, 1);
LY_DEFINE (ly_expand_environment, "ly:expand-environment",
1, 0, 0, (SCM str),
- "Expand $VAR and $@{VAR@} in @var{str}.")
+ "Expand @code{$VAR} and @code{$@{VAR@}} in @var{str}.")
{
LY_ASSERT_TYPE (scm_is_string, str, 1);
LY_DEFINE (ly_truncate_list_x, "ly:truncate-list!",
2, 0, 0, (SCM lst, SCM i),
- "Take at most the first @var{i} of list @var{lst}")
+ "Take at most the first @var{i} of list @var{lst}.")
{
LY_ASSERT_TYPE (scm_is_integer, i, 1);
LY_DEFINE (ly_format, "ly:format",
1, 0, 1, (SCM str, SCM rest),
- "LilyPond specific format, supporting ~a ~[0-9]f.")
+ "LilyPond specific format, supporting @code{~a} and @code{~[0-9]f}.")
{
LY_ASSERT_TYPE (scm_is_string, str, 1);
LY_DEFINE (ly_format_output, "ly:format-output",
1, 0, 0, (SCM context),
- "Given a Global context in its final state, "
- "process it and return the @code{Music_output} object in its final state.")
+ "Given a global context in its final state,"
+ " process it and return the @code{Music_output} object"
+ " in its final state.")
{
Global_context *g = dynamic_cast<Global_context *> (unsmob_context (context));
LY_DEFINE (ly_make_global_translator, "ly:make-global-translator",
1, 0, 0, (SCM global),
- "Create a translator group and connect it to the global context\n"
- "@var{global}. The translator group is returned.")
+ "Create a translator group and connect it to the global context"
+ " @var{global}. The translator group is returned.")
{
Global_context *g = dynamic_cast<Global_context *> (unsmob_context (global));
LY_ASSERT_TYPE (unsmob_global_context, global, 1)
LY_DEFINE (ly_make_global_context, "ly:make-global-context",
1, 0, 0, (SCM output_def),
- "Set up a global interpretation context, using the output\n"
- "block @var{output_def}.\n"
- "The context is returned.\n"
- )
+ "Set up a global interpretation context, using the output"
+ " block @var{output_def}. The context is returned.\n")
{
LY_ASSERT_SMOB (Output_def, output_def, 1);
Output_def *odef = unsmob_output_def (output_def);
LY_DEFINE (ly_interpret_music_expression, "ly:interpret-music-expression",
2, 0, 0, (SCM mus, SCM ctx),
- "Interpret the music expression @var{mus} in the\n"
- "global context @var{ctx}. The context is returned in its\n"
- "final state.\n")
+ "Interpret the music expression @var{mus} in the global context"
+ " @var{ctx}. The context is returned in its final state.")
{
LY_ASSERT_SMOB (Music, mus, 1);
LY_ASSERT_TYPE (unsmob_global_context, ctx, 2);
LY_DEFINE (ly_run_translator, "ly:run-translator",
2, 1, 0, (SCM mus, SCM output_def),
- "Process @var{mus} according to @var{output_def}. \n"
- "An interpretation context is set up,\n"
- "and @var{mus} is interpreted with it. \n"
- "The context is returned in its final state.\n"
- "\n\n"
- "Optionally, this routine takes an Object-key to\n"
- "to uniquely identify the Score block containing it.\n")
+ "Process @var{mus} according to @var{output-def}. An"
+ " interpretation context is set up, and @var{mus} is"
+ " interpreted with it. The context is returned in its"
+ " final state.\n"
+ "\n"
+ "Optionally, this routine takes an object-key to"
+ " to uniquely identify the score block containing it.")
{
LY_ASSERT_SMOB (Music, mus, 1);
LY_ASSERT_SMOB (Output_def, output_def, 2);
LY_DEFINE (ly_grob_array_length, "ly:grob-array-length",
1, 0, 0,
(SCM grob_arr),
- "Return the grob_array length.")
+ "Return the length of @var{grob-arr}.")
{
LY_ASSERT_SMOB (Grob_array, grob_arr, 1);
LY_DEFINE (ly_grob_array_ref, "ly:grob-array-ref",
2, 0, 0,
(SCM grob_arr, SCM index),
- "Retrieve the @code{index} element of @code{grob-arr}.")
+ "Retrieve the @var{index}th element of @var{grob-arr}.")
{
Grob_array *me = unsmob_grob_array (grob_arr);
LY_ASSERT_SMOB (Grob_array, grob_arr, 1);
LY_DEFINE (ly_grob_pq_less_p, "ly:grob-pq<?",
2, 0, 0, (SCM a, SCM b),
- "Compare 2 grob priority queue entries. Internal")
+ "Compare two grob priority queue entries."
+ " This is an internal function.")
{
if (Moment::compare (*unsmob_moment (scm_car (a)),
*unsmob_moment (scm_car (b))) < 0)
LY_DEFINE (ly_set_grob_modification_callback, "ly:set-grob-modification-callback",
1, 0, 0, (SCM cb),
- "Specify a procedure that will be called every time lilypond modifies "
- "a grob property. The callback will receive as arguments "
- "the grob that is being modified, "
- "the name of the C++ file in which the modification was requested, "
- "the line number in the C++ file in which the modification was requested, "
- "the name of the function in which the modification was requested, "
- "the property to be changed and "
- "the new value for the property.")
+ "Specify a procedure that will be called every time LilyPond"
+ " modifies a grob property. The callback will receive as"
+ " arguments the grob that is being modified, the name of the"
+ " C++ file in which the modification was requested, the line"
+ " number in the C++ file in which the modification was requested,"
+ " the name of the function in which the modification was"
+ " requested, the property to be changed, and the new value for"
+ " the property.")
{
modification_callback = (ly_is_procedure (cb)) ? cb : SCM_BOOL_F;
return SCM_UNSPECIFIED;
LY_DEFINE (ly_set_property_cache_callback, "ly:set-property-cache-callback",
1, 0, 0, (SCM cb),
- "Specify a procedure that will be called whenever lilypond calculates "
- "a callback function and caches the result. The callback will "
- "receive as arguments "
- "the grob whose property it is, "
- "the name of the property, "
- "the name of the callback that calculated the property and "
- "the new (cached) value of the property.")
+ "Specify a procedure that will be called whenever lilypond"
+ " calculates a callback function and caches the result. The"
+ " callback will receive as arguments the grob whose property it"
+ " is, the name of the property, the name of the callback that"
+ " calculated the property, and the new (cached) value of the"
+ " property.")
{
cache_callback = (ly_is_procedure (cb)) ? cb : SCM_BOOL_F;
return SCM_UNSPECIFIED;
LY_DEFINE (ly_grob_set_property_x, "ly:grob-set-property!",
3, 0, 0, (SCM grob, SCM sym, SCM val),
- "Set @var{sym} in grob @var{grob} to value @var{val}")
+ "Set @var{sym} in grob @var{grob} to value @var{val}.")
{
Grob *sc = unsmob_grob (grob);
LY_DEFINE (ly_grob_property, "ly:grob-property",
2, 1, 0, (SCM grob, SCM sym, SCM deflt),
- "Return the value of a value in grob @var{g} of property @var{sym}. "
- "It will return @code{'()} or @var{deflt} (if specified) "
- "if @var{sym} is undefined in @var{g}."
- "\n\n")
+ "Return the value of a value in grob@tie{}@var{g} of property"
+ " @var{sym}. It returns @code{'()} (end-of-list) or"
+ " @var{deflt} (if specified) if @var{sym} is undefined"
+ " in@tie{}@var{g}.")
{
Grob *sc = unsmob_grob (grob);
LY_DEFINE (ly_grob_object, "ly:grob-object",
2, 0, 0, (SCM grob, SCM sym),
- "Return the value of a pointer in grob @var{g} of property @var{sym}. "
- "It will return @code{' ()} (end-of-list) "
- "if @var{sym} is undefined in @var{g}."
- "\n\n")
+ "Return the value of a pointer in grob@tie{}@var{g} of property"
+ " @var{sym}. It returns @code{'()} (end-of-list) if @var{sym}"
+ " is undefined in@tie{}@var{g}.")
{
Grob *sc = unsmob_grob (grob);
LY_DEFINE (ly_grob_alist_chain, "ly:grob-alist-chain",
1, 1, 0, (SCM grob, SCM global),
- "Get an alist chain for grob @var{grob}, with @var{global} as the "
- "global default. If unspecified, @code{font-defaults} "
- "from the layout block is taken. ")
+ "Get an alist chain for grob @var{grob}, with @var{global} as"
+ " the global default. If unspecified, @code{font-defaults}"
+ " from the layout block is taken.")
{
Grob *sc = unsmob_grob (grob);
LY_DEFINE (ly_grob_extent, "ly:grob-extent",
3, 0, 0, (SCM grob, SCM refp, SCM axis),
- "Get the extent in @var{axis} direction of @var{grob} relative to "
- "the grob @var{refp}")
+ "Get the extent in @var{axis} direction of @var{grob} relative to"
+ " the grob @var{refp}.")
{
Grob *sc = unsmob_grob (grob);
Grob *ref = unsmob_grob (refp);
LY_DEFINE (ly_grob_robust_relative_extent, "ly:grob-robust-relative-extent",
3, 0, 0, (SCM grob, SCM refp, SCM axis),
- "Get the extent in @var{axis} direction of @var{grob} relative to "
- "the grob @var{refp}, or (0,0) if empty")
+ "Get the extent in @var{axis} direction of @var{grob} relative to"
+ " the grob @var{refp}, or @code{(0,0)} if empty.")
{
Grob *sc = unsmob_grob (grob);
Grob *ref = unsmob_grob (refp);
LY_DEFINE (ly_grob_relative_coordinate, "ly:grob-relative-coordinate",
3, 0, 0, (SCM grob, SCM refp, SCM axis),
- "Get the coordinate in @var{axis} direction of @var{grob} relative to "
- "the grob @var{refp}")
+ "Get the coordinate in @var{axis} direction of @var{grob} relative"
+ " to the grob @var{refp}.")
{
Grob *sc = unsmob_grob (grob);
Grob *ref = unsmob_grob (refp);
LY_DEFINE (ly_grob_parent, "ly:grob-parent",
2, 0, 0, (SCM grob, SCM axis),
- "Get the parent of @var{grob}. @var{axis} is 0 for the X-axis, "
- "1 for the Y-axis.")
+ "Get the parent of @var{grob}. @var{axis} is 0 for the X-axis,"
+ " 1@tie{}for the Y-axis.")
{
Grob *sc = unsmob_grob (grob);
LY_DEFINE (ly_grob_properties, "ly:grob-properties",
1, 0, 0, (SCM grob),
- "Get the mutable proprerties of @var{grob}.")
+ "Get the mutable properties of @var{grob}.")
{
Grob *g = unsmob_grob (grob);
LY_DEFINE (ly_grob_system, "ly:grob-system",
1, 0, 0, (SCM grob),
- "Return the System Grob of @var{grob}.")
+ "Return the system grob of @var{grob}.")
{
Grob *me = unsmob_grob (grob);
LY_DEFINE (ly_grob_original, "ly:grob-original",
1, 0, 0, (SCM grob),
- "Return the unbroken original Grob of @var{grob}.")
+ "Return the unbroken original grob of @var{grob}.")
{
Grob *me = unsmob_grob (grob);
LY_DEFINE (ly_grob_translate_axis_x, "ly:grob-translate-axis!",
3, 0, 0, (SCM grob, SCM d, SCM a),
- "Translate @var{g} on axis @var{a} over distance @var{d}.")
+ "Translate @var{g} on axis@tie{}@var{a} over"
+ " distance@tie{}@var{d}.")
{
Grob *me = unsmob_grob (grob);
*/
LY_DEFINE (ly_grob_common_refpoint, "ly:grob-common-refpoint",
3, 0, 0, (SCM grob, SCM other, SCM axis),
- "Find the common refpoint of @var{grob} and @var{other} for @var{axis}."
- )
+ "Find the common refpoint of @var{grob} and @var{other}"
+ " for @var{axis}.")
{
Grob *gr = unsmob_grob (grob);
LY_DEFINE (ly_grob_common_refpoint_of_array, "ly:grob-common-refpoint-of-array",
3, 0, 0, (SCM grob, SCM others, SCM axis),
- "Find the common refpoint of @var{grob} and @var{others} "
- "(a grob-array) for @var{axis}."
- )
+ "Find the common refpoint of @var{grob} and @var{others}"
+ " (a grob-array) for @var{axis}.")
{
Grob *gr = unsmob_grob (grob);
type `box', initialized to `#f'. */
LY_DEFINE (ly_export, "ly:export",
1, 0, 0, (SCM arg),
- "Export a Scheme object to the parser, "
- "so it is treated as an identifier.")
+ "Export a Scheme object to the parser"
+ " so it is treated as an identifier.")
{
SCM_RETURN_NEWSMOB (package_tag, arg);
}
}
LY_DEFINE (ly_input_message, "ly:input-message", 2, 0, 1, (SCM sip, SCM msg, SCM rest),
- "Print @var{msg} as a GNU compliant error message, pointing to the "
- "location in @var{sip}. @var{msg} is interpreted similar to @code{format}'s argument\n")
+ "Print @var{msg} as a GNU compliant error message, pointing"
+ " to the location in @var{sip}. @var{msg} is interpreted"
+ " similar to @code{format}'s argument, using @var{rest}.")
{
Input *ip = unsmob_input (sip);
LY_DEFINE (ly_input_file_line_char_column,
"ly:input-file-line-char-column",
1, 0, 0, (SCM sip),
- "Return input location in @var{sip} as (file-name line char column).")
+ "Return input location in @var{sip} as"
+ " @code{(file-name line char column)}.")
{
LY_ASSERT_TYPE (unsmob_input, sip, 1);
Input *ip = unsmob_input (sip);
LY_DEFINE (ly_input_both_locations,
"ly:input-both-locations",
1, 0, 0, (SCM sip),
- "Return input location in @var{sip} as "
- "(file-name first-line first-column last-line last-column).")
+ "Return input location in @var{sip} as"
+ " @code{(file-name first-line first-column last-line last-column)}.")
{
LY_ASSERT_TYPE (unsmob_input, sip, 1);
LY_DEFINE (ly_item_break_dir, "ly:item-break-dir",
1, 0, 0, (SCM it),
- "The break status dir of item @var{it}. @code{-1} is end of "
- "line, @code{0} unbroken, and @code{1} begin of line.")
+ "The break status direction of item @var{it}. @code{-1} means"
+ " end of line, @code{0}@tie{}unbroken, and"
+ " @code{1}@tie{}beginning of line.")
{
LY_ASSERT_TYPE (unsmob_item, it, 1);
Item *me = unsmob_item (it);
LY_DEFINE (ly_lexer_keywords, "ly:lexer-keywords",
1, 0, 0, (SCM lexer),
- "Return a list of (KEY . CODE) pairs, signifying the lilypond reserved words list.")
+ "Return a list of @code{(KEY . CODE)} pairs, signifying the"
+ " LilyPond reserved words list.")
{
LY_ASSERT_SMOB (Lily_lexer, lexer, 1);
LY_DEFINE (ly_parse_file, "ly:parse-file",
1, 0, 0, (SCM name),
- "Parse a single @code{.ly} file. "
- "Upon failure, throw @code{ly-file-failed} key.")
+ "Parse a single @code{.ly} file."
+ " Upon failure, throw @code{ly-file-failed} key.")
{
LY_ASSERT_TYPE (scm_is_string, name, 1);
string file = ly_scm2string (name);
LY_DEFINE (ly_parser_lookup, "ly:parser-lookup",
2, 0, 0, (SCM parser_smob, SCM symbol),
- "Lookup @var{symbol} in @var{parser-smob}'s module. "
- "Undefined is '().")
+ "Look up @var{symbol} in @var{parser-smob}'s module."
+ " Return @code{'()} if not defined.")
{
LY_ASSERT_SMOB (Lily_parser, parser_smob, 1);
LY_DEFINE (ly_parser_parse_string, "ly:parser-parse-string",
2, 0, 0, (SCM parser_smob, SCM ly_code),
- "Parse the string @code{ly-code} with @code{parser-smob}."
- "Upon failure, throw @code{ly-file-failed} key.")
+ "Parse the string @var{ly-code} with @var{parser-smob}."
+ " Upon failure, throw @code{ly-file-failed} key.")
{
LY_ASSERT_SMOB (Lily_parser, parser_smob, 1);
Lily_parser *parser = unsmob_lily_parser (parser_smob);
LY_DEFINE (ly_parser_set_note_names, "ly:parser-set-note-names",
2, 0, 0, (SCM parser, SCM names),
- "Replace current note names in @var{parser}. "
- "@var{names} is an alist of symbols. "
- "This only has effect if the current mode is notes.")
+ "Replace current note names in @var{parser}."
+ " @var{names} is an alist of symbols. This only has effect"
+ " if the current mode is notes.")
{
LY_ASSERT_SMOB (Lily_parser, parser, 1);
Lily_parser *p = unsmob_lily_parser (parser);
LY_DEFINE (ly_parser_error, "ly:parser-error",
2, 1, 0, (SCM parser, SCM msg, SCM input),
- "Display an error message, and make the parser fail")
+ "Display an error message and make the parser fail.")
{
LY_ASSERT_SMOB (Lily_parser, parser, 1);
Lily_parser *p = unsmob_lily_parser (parser);
LY_DEFINE (ly_module_2_alist, "ly:module->alist",
1, 0, 0, (SCM mod),
- "Dump the contents of module @var{mod} as an alist.")
+ "Dump the contents of module @var{mod} as an alist.")
{
SCM_VALIDATE_MODULE (1, mod);
SCM obarr = SCM_MODULE_OBARRAY (mod);
LY_DEFINE (ly_module_copy, "ly:module-copy",
2, 0, 0, (SCM dest, SCM src),
- "Copy all bindings from module SRC into DEST.")
+ "Copy all bindings from module @var{src} into @var{dest}.")
{
#define FUNC_NAME __FUNCTION__
SCM_VALIDATE_MODULE (1, src);
LY_DEFINE (ly_clear_anonymous_modules, "ly:clear-anonymous-modules",
0, 0, 0, (),
- "Plug a GUILE 1.6 and 1.7 memory leak by breaking a weak reference "
- "pointer cycle explicitly.")
+ "Plug a GUILE 1.6 and 1.7 memory leak by breaking a weak"
+ " reference pointer cycle explicitly.")
{
#ifdef MODULE_GC_KLUDGE
clear_anonymous_modules ();
LY_DEFINE (ly_modules_lookup, "ly:modules-lookup",
2, 1, 0,
(SCM modules, SCM sym, SCM def),
- "Lookup @var{sym} in the list @var{modules}, "
- "returning the first occurence. "
- "If not found, return @var{default}, or @code{#f}.")
+ "Look up @var{sym} in the list @var{modules},"
+ " returning the first occurence. If not found, return"
+ " @var{def} or @code{#f} if @var{def} isn't specified.")
{
for (SCM s = modules; scm_is_pair (s); s = scm_cdr (s))
{
/* TODO: add optional factor argument. */
LY_DEFINE (ly_make_moment, "ly:make-moment",
2, 2, 0, (SCM n, SCM d, SCM gn, SCM gd),
- "Create the rational number with main timing @var{n}/@var{d}, "
- "and optional grace timin @var{gn}/@var{gd}.\n"
+ "Create the rational number with main timing @var{n}/@var{d},"
+ " and optional grace timing @var{gn}/@var{gd}.\n"
"\n"
- "\n"
- "Moment is a point in musical time. "
- "It is consists of a pair of rationals (@var{m}, @var{g}), "
- "where @var{m} is the timing for the main\n"
- "notes, and @var{g} the timing for grace notes. "
- "In absence of grace notes, @var{g} is zero.\n")
+ "A @dfn{moment} is a point in musical time. It consists of"
+ " a pair of rationals (@var{m},@tie{}@var{g}), where @var{m} is"
+ " the timing for the main notes, and @var{g} the timing for"
+ " grace notes. In absence of grace notes, @var{g}@tie{}is zero.")
{
LY_ASSERT_TYPE (scm_is_integer, n, 1);
LY_ASSERT_TYPE (scm_is_integer, d, 2);
LY_DEFINE (ly_music_function_p, "ly:music-function?", 1, 0, 0,
(SCM x),
- "Is @var{x} an @code{music-function}?")
+ "Is @var{x} a @code{music-function}?")
{
return is_music_function (x) ? SCM_BOOL_T : SCM_BOOL_F;
}
LY_DEFINE (ly_music_function_extract, "ly:music-function-extract", 1, 0, 0,
(SCM x),
- "Return the Scheme function inside @var{x}")
+ "Return the Scheme function inside@tie{}@var{x}.")
{
LY_ASSERT_TYPE (is_music_function, x, 1);
LY_DEFINE (ly_make_music_function, "ly:make-music-function", 2, 0, 0,
(SCM signature, SCM func),
- "Make a function to process music, to be used for the "
- "parser. @code{func} is the function, and @code{signature} describes "
- "Its arguments. @code{signature} is a list containing either "
- "@code{ly:music?} predicates or other type predicates.")
+ "Make a function to process music, to be used for the"
+ " parser. @code{func} is the function, and @code{signature}"
+ " describes its arguments. @code{signature} is a list"
+ " containing either @code{ly:music?} predicates or other type"
+ " predicates.")
{
LY_ASSERT_TYPE (ly_is_procedure, func, 1);
return make_music_function (signature, func);
LY_DEFINE (ly_music_length, "ly:music-length",
1, 0, 0, (SCM mus),
- "Get the length of music expression @var{mus}, and return as a @code{Moment} object.")
+ "Get the length of music expression @var{mus} and return"
+ " it as a @code{Moment} object.")
{
LY_ASSERT_TYPE (unsmob_music, mus, 1);
Music *sc = unsmob_music (mus);
LY_DEFINE (ly_music_property,
"ly:music-property", 2, 1, 0, (SCM mus, SCM sym, SCM dfault),
- "Get the property @var{sym} of music expression @var{mus}.\n"
- "If @var{sym} is undefined, return @code{'()}.\n")
+ "Get the property @var{sym} of music expression @var{mus}."
+ " If @var{sym} is undefined, return @code{'()}.")
{
LY_ASSERT_TYPE (unsmob_music, mus, 1);
return ly_prob_property (mus, sym, dfault);
LY_DEFINE (ly_music_set_property_x, "ly:music-set-property!",
3, 0, 0, (SCM mus, SCM sym, SCM val),
- "Set property @var{sym} in music expression @var{mus} to @var{val}.")
+ "Set property @var{sym} in music expression @var{mus} to"
+ " @var{val}.")
{
LY_ASSERT_TYPE (unsmob_music, mus, 1);
/* todo: property args */
LY_DEFINE (ly_make_music, "ly:make-music",
1, 0, 0, (SCM props),
- "Make a C++ Music object, initialize with\n"
- "@var{props}. \n\n"
- ""
- "This function is for internal use, and is only called by "
- "@code{make-music}, which is the preferred interface "
- "for creating music objects. ")
+ "Make a C++ @code{Music} object and initialize it with"
+ " @var{props}.\n"
+ "\n"
+ "This function is for internal use and is only called by"
+ " @code{make-music}, which is the preferred interface"
+ " for creating music objects.")
{
Music *ms = new Music (props);
return ms->unprotect ();
LY_DEFINE (ly_music_p, "ly:music?",
1, 0, 0, (SCM obj),
- "Type predicate")
+ "Type predicate.")
{
return scm_from_bool (unsmob_music (obj));
}
/* todo: property args */
LY_DEFINE (ly_music_mutable_properties, "ly:music-mutable-properties",
1, 0, 0, (SCM mus),
- "Return an alist containing the mutable properties of @var{mus}.\n"
- "The immutable properties are not available, since "
- "they are constant and initialized by the "
- "@code{make-music} function.\n")
+ "Return an alist containing the mutable properties of @var{mus}."
+ " The immutable properties are not available, since they are"
+ " constant and initialized by the @code{make-music} function.")
{
LY_ASSERT_TYPE (unsmob_music, mus, 1);
Music *m = unsmob_music (mus);
LY_DEFINE (ly_music_list_p, "ly:music-list?",
1, 0, 0, (SCM lst),
- "Type predicate: return true if @var{lst} is a list "
- "of music objects.")
+ "Type predicate: Return true if @var{lst} is a list"
+ " of music objects.")
{
if (scm_list_p (lst) == SCM_BOOL_T)
while (scm_is_pair (lst))
LY_DEFINE (ly_music_deep_copy, "ly:music-deep-copy",
1, 0, 0, (SCM m),
- "Copy @var{m} and all sub expressions of @var{m}")
+ "Copy @var{m} and all sub expressions of@tie{}@var{m}.")
{
SCM copy = m;
if (unsmob_music (m))
LY_DEFINE (ly_music_transpose, "ly:music-transpose",
2, 0, 0, (SCM m, SCM p),
- "Transpose @var{m} such that central C is mapped to @var{p}. "
- "Return @var{m}.")
+ "Transpose @var{m} such that central@tie{}C is mapped"
+ " to@tie{}@var{p}. Return@tie{}@var{m}.")
{
LY_ASSERT_TYPE (unsmob_music, m, 1);
LY_ASSERT_SMOB (Pitch, p, 2);
*/
LY_DEFINE (ly_music_compress, "ly:music-compress",
2, 0, 0, (SCM m, SCM factor),
- "Compress music object @var{m} by moment @var{factor}.")
+ "Compress music object@tie{}@var{m} by moment @var{factor}.")
{
LY_ASSERT_TYPE (unsmob_music, m, 1);
LY_ASSERT_TYPE (unsmob_moment, factor, 2);
LY_DEFINE (ly_music_duration_length, "ly:music-duration-length", 1, 0, 0,
(SCM mus),
- "Extract the duration field from @var{mus}, and return the length.")
+ "Extract the duration field from @var{mus} and return the"
+ " length.")
{
LY_ASSERT_TYPE (unsmob_music, mus, 1);
Music *m = unsmob_music (mus);
LY_DEFINE (ly_music_duration_compress, "ly:music-duration-compress", 2, 0, 0,
(SCM mus, SCM fact),
- "Compress @var{mus} by factor @var{fact}, which is a @code{Moment}.")
+ "Compress @var{mus} by factor @var{fact}, which is a"
+ " @code{Moment}.")
{
LY_ASSERT_TYPE (unsmob_music, mus, 1);
LY_ASSERT_SMOB (Moment, fact, 2);
*/
LY_DEFINE (ly_transpose_key_alist, "ly:transpose-key-alist",
2, 0, 0, (SCM l, SCM pit),
- "Make a new key alist of @var{l} transposed by pitch @var{pit}")
+ "Make a new key alist of@tie{}@var{l} transposed by"
+ " pitch @var{pit}.")
{
SCM newlist = SCM_EOL;
Pitch *p = unsmob_pitch (pit);
LY_DEFINE (ly_note_head__stem_attachment, "ly:note-head::stem-attachment",
2, 0, 0, (SCM font_metric, SCM glyph_name),
- "Get attachment in @var{font-metric} for attaching a stem to notehead "
- "@var{glyph-name}.")
+ "Get attachment in @var{font-metric} for attaching a stem to"
+ " notehead @var{glyph-name}.")
{
LY_ASSERT_SMOB (Font_metric, font_metric, 1);
Font_metric *fm = unsmob_metrics (font_metric);
LY_DEFINE (ly_font_sub_fonts, "ly:font-sub-fonts", 1, 0, 0,
(SCM font),
- "Given the font metric @var{font} of an OpenType font, return the "
- "names of the subfonts within @var{font}.")
+ "Given the font metric @var{font} of an OpenType font, return the"
+ " names of the subfonts within @var{font}.")
{
LY_ASSERT_SMOB (Font_metric, font, 1);
Font_metric *fm = unsmob_metrics (font);
LY_DEFINE (ly_otf_font_glyph_info, "ly:otf-font-glyph-info", 2, 0, 0,
(SCM font, SCM glyph),
- "Given the font metric @var{font} of an OpenType font, return the "
- "information about named glyph @var{glyph} (a string)")
+ "Given the font metric @var{font} of an OpenType font, return the"
+ " information about named glyph @var{glyph} (a string).")
{
Modified_font_metric *fm
= dynamic_cast<Modified_font_metric *> (unsmob_metrics (font));
LY_DEFINE (ly_otf_font_table_data, "ly:otf-font-table-data", 2, 0, 0,
(SCM font, SCM tag),
- "Extract a table @var{tag} from @var{font}. Return empty string for "
- "non-existent @var{tag}.")
+ "Extract a table @var{tag} from @var{font}. Return empty string"
+ " for non-existent @var{tag}.")
{
Modified_font_metric *fm
= dynamic_cast<Modified_font_metric *> (unsmob_metrics (font));
LY_DEFINE (ly_otf_glyph_list, "ly:otf-glyph-list",
1, 0, 0, (SCM font),
- "Return a list of glyphnames for @var{font}.")
+ "Return a list of glyph names for @var{font}.")
{
Modified_font_metric *fm
= dynamic_cast<Modified_font_metric *> (unsmob_metrics (font));
LY_DEFINE (ly_output_def_lookup, "ly:output-def-lookup",
2, 1, 0, (SCM pap, SCM sym, SCM def),
- "Lookup @var{sym} in the Output_def @var{pap}. "
- "Return the value or @var{def} (which defaults to @code{'()}) if undefined.")
+ "Look up @var{sym} in the @var{pap} output definition"
+ " (e.g., @code{\\paper}). Return the value or @var{def}"
+ " (which defaults to @code{'()}) if undefined.")
{
LY_ASSERT_SMOB (Output_def, pap, 1);
Output_def *op = unsmob_output_def (pap);
LY_DEFINE (ly_output_def_parent, "ly:output-def-parent",
1, 0, 0, (SCM def),
- "Get the parent output-def of @var{def}.")
+ "Get the parent output definition of @var{def}.")
{
LY_ASSERT_SMOB (Output_def, def, 1);
Output_def *op = unsmob_output_def (def);
LY_DEFINE (ly_output_def_clone, "ly:output-def-clone",
1, 0, 0, (SCM def),
- "Clone @var{def}.")
+ "Clone output definition @var{def}.")
{
LY_ASSERT_SMOB (Output_def, def, 1);
Output_def *op = unsmob_output_def (def);
LY_DEFINE (ly_paper_outputscale, "ly:paper-outputscale",
1, 0, 0, (SCM bp),
- "Get output-scale for BP.")
+ "Get output-scale for @var{bp}.")
{
LY_ASSERT_SMOB (Output_def, bp, 1);
Output_def *b = unsmob_output_def (bp);
LY_DEFINE (ly_make_output_def, "ly:make-output-def",
0, 0, 0, (),
- "Make a output def.")
+ "Make an output definition.")
{
Output_def *bp = new Output_def;
return bp->unprotect ();
LY_DEFINE (ly_paper_get_font, "ly:paper-get-font", 2, 0, 0,
(SCM paper_smob, SCM chain),
-
- "Return a font metric satisfying the font-qualifiers "
- "in the alist chain @var{chain}.\n"
- "(An alist chain is a list of alists, "
- "containing grob properties).\n")
+ "Return a font metric satisfying the font-qualifiers"
+ " in the alist chain @var{chain}. (An alist chain is a"
+ " list of alists, containing grob properties.)")
{
LY_ASSERT_SMOB (Output_def, paper_smob, 1);
LY_DEFINE (ly_page_turn_breaking, "ly:page-turn-breaking",
1, 0, 0, (SCM pb),
- "Optimally break (pages and lines) the Paper_book PB such that page turns "
- "only happen in specified places, returning its pages.")
+ "Optimally break (pages and lines) the @code{Paper_book} object"
+ " @var{pb} such that page turns only happen in specified places,"
+ " returning its pages.")
{
Page_turn_page_breaking b (unsmob_paper_book (pb));
return b.solve ();
LY_DEFINE (ly_optimal_breaking, "ly:optimal-breaking",
1, 0, 0, (SCM pb),
- "Optimally break (pages and lines) the Paper_book PB to minimise badness in "
- "bother vertical and horizontal spacing.")
+ "Optimally break (pages and lines) the @code{Paper_book} object"
+ " @var{pb} to minimize badness in bother vertical and horizontal"
+ " spacing.")
{
Optimal_page_breaking b (unsmob_paper_book (pb));
return b.solve ();
LY_DEFINE (ly_pango_font_physical_fonts, "ly:pango-font-physical-fonts",
1, 0, 0,
(SCM f),
- "Return alist of (PSNAME . FILENAME) tuples.")
+ "Return alist of @code{(PSNAME . FILENAME)} tuples.")
{
Pango_font *pf = dynamic_cast<Pango_font *> (unsmob_metrics (f));
LY_DEFINE (ly_make_pango_description_string, "ly:make-pango-description-string",
2, 0, 0, (SCM chain, SCM size),
- "Make a PangoFontDescription string for the property alist @var{chain} at size @var{size}.")
+ "Make a @code{PangoFontDescription} string for the property"
+ " alist @var{chain} at size @var{size}.")
{
LY_ASSERT_TYPE (scm_is_number, size, 1);
PangoFontDescription *pfd = properties_to_pango_description (chain, scm_to_double (size));
LY_DEFINE (ly_paper_book_pages, "ly:paper-book-pages",
1, 0, 0, (SCM pb),
- "Return pages in book PB.")
+ "Return pages in book @var{pb}.")
{
LY_ASSERT_SMOB (Paper_book, pb, 1);
return unsmob_paper_book (pb)->pages ();
LY_DEFINE (ly_paper_book_systems, "ly:paper-book-systems",
1, 0, 0, (SCM pb),
- "Return systems in book PB.")
+ "Return systems in book @var{pb}.")
{
LY_ASSERT_SMOB (Paper_book, pb, 1);
return unsmob_paper_book (pb)->systems ();
LY_DEFINE (ly_paper_book_paper, "ly:paper-book-paper",
1, 0, 0, (SCM pb),
- "Return pages in book PB.")
+ "Return pages in book @var{pb}.")
{
LY_ASSERT_SMOB (Paper_book, pb, 1);
Paper_book *pbook = unsmob_paper_book (pb);
LY_DEFINE (ly_make_paper_outputter, "ly:make-paper-outputter",
2, 0, 0, (SCM port, SCM format),
- "Create an outputter that evaluates within "
- "@code{output-}@var{format}, writing to @var{port}.")
+ "Create an outputter that evaluates within"
+ " @code{output-}@var{format}, writing to @var{port}.")
{
LY_ASSERT_TYPE (ly_is_port, port, 1);
LY_ASSERT_TYPE (ly_is_symbol, format, 2);
LY_DEFINE (ly_paper_score_paper_systems, "ly:paper-score-paper-systems",
1, 0, 0,
(SCM paper_score),
- "Return vector of paper_system objects from @var{paper-score}.")
+ "Return vector of @code{paper_system} objects from"
+ " @var{paper-score}.")
{
LY_ASSERT_TYPE (unsmob_paper_score, paper_score, 1);
LY_DEFINE (ly_performance_write, "ly:performance-write",
2, 0, 0, (SCM performance, SCM filename),
- "Write @var{performance} to @var{filename}")
+ "Write @var{performance} to @var{filename}.")
{
LY_ASSERT_TYPE (unsmob_performance, performance, 1);
LY_ASSERT_TYPE (scm_is_string, filename, 2);
LY_DEFINE (ly_otf_2_cff, "ly:otf->cff",
1, 0, 0, (SCM otf_file_name),
- "Convert the contents of a OTF file to CFF file, returning it as "
- " a string.")
+ "Convert the contents of an OTF file to a CFF file,"
+ " returning it as a string.")
{
LY_ASSERT_TYPE (scm_is_string, otf_file_name, 1);
LY_DEFINE (ly_pitch_transpose, "ly:pitch-transpose",
2, 0, 0, (SCM p, SCM delta),
- "Transpose @var{p} by the amount @var{delta}, "
- "where @var{delta} is relative to middle C.")
+ "Transpose @var{p} by the amount @var{delta},"
+ " where @var{delta} is relative to middle@tie{}C.")
{
LY_ASSERT_SMOB (Pitch, p, 1);
LY_ASSERT_SMOB (Pitch, delta, 2);
/* Should add optional args. */
LY_DEFINE (ly_make_pitch, "ly:make-pitch",
2, 1, 0, (SCM octave, SCM note, SCM alter),
- "@var{octave} is specified by an integer, "
- "zero for the octave containing middle C. "
- "@var{note} is a number from 0 to 6, "
- "with 0 corresponding to C and 6 corresponding to B. "
- "The @var{alter} is a rational number of whole tones for alteration.")
+ "@var{octave} is specified by an integer, zero for the octave"
+ " containing middle@tie{}C. @var{note} is a number from 0"
+ " to@tie{}6, with 0 corresponding to pitch@tie{}C and 6"
+ " corresponding to pitch@tie{}B. @var{alter} is a rational"
+ " number of whole tones for alteration.")
{
LY_ASSERT_TYPE (scm_is_integer, octave, 1);
LY_ASSERT_TYPE (scm_is_integer, note, 2);
LY_DEFINE (ly_pitch_steps, "ly:pitch-steps", 1, 0, 0,
(SCM p),
- "Number of steps counted from middle C of the pitch @var{p}.")
+ "Number of steps counted from middle@tie{}C of the"
+ " pitch@tie{}@var{p}.")
{
LY_ASSERT_SMOB (Pitch, p, 1);
Pitch *pp = unsmob_pitch (p);
LY_DEFINE (ly_pitch_octave, "ly:pitch-octave",
1, 0, 0, (SCM pp),
- "Extract the octave from pitch @var{p}.")
+ "Extract the octave from pitch@tie{}@var{pp}.")
{
LY_ASSERT_SMOB (Pitch, pp, 1);
Pitch *p = unsmob_pitch (pp);
LY_DEFINE (ly_pitch_alteration, "ly:pitch-alteration",
1, 0, 0, (SCM pp),
- "Extract the alteration from pitch @var{p}.")
+ "Extract the alteration from pitch@tie{}@var{pp}.")
{
LY_ASSERT_SMOB (Pitch, pp, 1);
Pitch *p = unsmob_pitch (pp);
LY_DEFINE (pitch_notename, "ly:pitch-notename",
1, 0, 0, (SCM pp),
- "Extract the note name from pitch @var{pp}.")
+ "Extract the note name from pitch @var{pp}.")
{
LY_ASSERT_SMOB (Pitch, pp, 1);
Pitch *p = unsmob_pitch (pp);
LY_DEFINE (ly_pitch_quartertones, "ly:pitch-quartertones",
1, 0, 0, (SCM pp),
- "Calculate the number of quarter tones of @var{p} from middle C.")
+ "Calculate the number of quarter tones of@tie{}@var{pp} from"
+ " middle@tie{}C.")
{
LY_ASSERT_SMOB (Pitch, pp, 1);
Pitch *p = unsmob_pitch (pp);
LY_DEFINE (ly_pitch_semitones, "ly:pitch-semitones",
1, 0, 0, (SCM pp),
- "calculate the number of semitones of @var{p} from middle C.")
+ "Calculate the number of semitones of@tie{}@var{pp} from"
+ " middle@tie{}C.")
{
LY_ASSERT_SMOB (Pitch, pp, 1);
Pitch *p = unsmob_pitch (pp);
LY_DEFINE (ly_pitch_diff, "ly:pitch-diff",
2, 0, 0, (SCM pitch, SCM root),
- "Return pitch @var{delta} such that @code{pitch} transposed by "
- "@var{delta} equals @var{root}")
+ "Return pitch @var{delta} such that @var{pitch} transposed by"
+ " @var{delta} equals @var{root}.")
{
LY_ASSERT_SMOB (Pitch, pitch, 1);
LY_DEFINE (ly_prob_set_property_x, "ly:prob-set-property!",
2, 1, 0, (SCM obj, SCM sym, SCM value),
- "Set property @var{sym} of @var{obj} to @var{value}")
+ "Set property @var{sym} of @var{obj} to @var{value}.")
{
LY_ASSERT_SMOB (Prob, obj, 1);
Prob *ps = unsmob_prob (obj);
LY_DEFINE (ly_prob_type_p, "ly:prob-type?",
2, 0, 0,
(SCM obj, SCM type),
- "If obj the specified prob-type?")
+ "Is @var{obj} the specified prob-type?")
{
Prob*prob = unsmob_prob (obj);
return scm_from_bool (prob && prob->type () == type);
LY_DEFINE (ly_make_prob, "ly:make-prob",
2, 0, 1,
(SCM type, SCM init, SCM rest),
- "Create a Prob.")
+ "Create a @code{Prob} object.")
{
Prob *pr = new Prob (type, init);
LY_DEFINE (ly_paper_system_minimum_distance, "ly:paper-system-minimum-distance",
2, 0, 0, (SCM sys1, SCM sys2),
- "Measure the minimum distance between these two paper-systems "
- "using their stored skylines if possible and falling back to "
- "their extents otherwise.")
+ "Measure the minimum distance between these two paper-systems,"
+ " using their stored skylines if possible and falling back to"
+ " their extents otherwise.")
{
Real ret = 0;
Prob *p1 = unsmob_prob (sys1);
LY_DEFINE (ly_property_lookup_stats, "ly:property-lookup-stats",
1, 0, 0, (SCM sym),
- "Return hash table with a property access corresponding to @var{sym}. "
- "Choices are prob, grob and context.")
+ "Return hash table with a property access corresponding to"
+ " @var{sym}. Choices are @code{prob}, @code{grob}, and"
+ " @code{context}.")
{
if (sym == ly_symbol2scm ("context"))
return context_property_lookup_table ? context_property_lookup_table
LY_DEFINE (ly_option_usage, "ly:option-usage", 0, 0, 0, (),
- "Print @code{ly:set-option} usage")
+ "Print @code{ly:set-option} usage.")
{
string help = get_help_string ();
progress_indication (help);
}
LY_DEFINE (ly_command_line_options, "ly:command-line-options", 0, 0, 0, (),
- "The Scheme specified on command-line with @samp{-d}.")
+ "The Scheme options specified on command-line with @option{-d}.")
{
return ly_string2scm (init_scheme_variables_global);
}
LY_DEFINE (ly_command_line_code, "ly:command-line-code", 0, 0, 0, (),
- "The Scheme specified on command-line with @samp{-e}.")
+ "The Scheme code specified on command-line with @option{-e}.")
{
return ly_string2scm (init_scheme_code_global);
}
LY_DEFINE (ly_command_line_verbose_p, "ly:command-line-verbose?", 0, 0, 0, (),
- "Was be_verbose_global set?")
+ "Was @code{be_verbose_global} set?")
{
return scm_from_bool (be_verbose_global);
}
*/
LY_DEFINE (ly_make_scale, "ly:make-scale",
1, 0, 0, (SCM steps),
- "Create a scale. Takes a vector of ints as argument")
+ "Create a scale. Takes a vector of integers as argument.")
{
bool type_ok = scm_is_vector (steps);
LY_DEFINE (ly_make_listener, "ly:make-listener",
1, 0, 0, (SCM callback),
- "Creates a listener. Any time the listener hears\n"
- " an object, it will call @var{callback}\n"
- " with that object.\n"
+ "Create a listener. Any time the listener hears an object,"
+ " it will call @var{callback} with that object.\n"
"\n"
- " @var{callback} should take exactly one argument." )
+ "@var{callback} should take exactly one argument.")
{
LY_ASSERT_TYPE (ly_is_procedure, callback, 1);
Scheme_listener *l = new Scheme_listener (callback);
LY_DEFINE (ly_score_output_defs, "ly:score-output-defs",
1, 0, 0, (SCM score),
- "All output defs in a score.")
+ "All output definitions in a score.")
{
LY_ASSERT_SMOB (Score, score, 1);
Score *sc = unsmob_score (score);
LY_DEFINE (ly_score_header, "ly:score-header",
1, 0, 0, (SCM score),
- "return score header.")
+ "Return score header.")
{
LY_ASSERT_SMOB (Score, score, 1);
Score *sc = unsmob_score (score);
LY_DEFINE (ly_score_music, "ly:score-music",
1, 0, 0, (SCM score),
- "return score music.")
+ "Return score music.")
{
LY_ASSERT_SMOB (Score, score, 1);
Score *sc = unsmob_score (score);
LY_DEFINE (ly_score_embedded_format, "ly:score-embedded-format",
2, 0, 0, (SCM score, SCM layout),
- "Run @var{score} through @var{layout}, an output definition, "
- "scaled to correct output-scale already, "
- "return a list of layout-lines. "
- "\nTake optional Object_key argument.")
+ "Run @var{score} through @var{layout} (an output definition)"
+ " scaled to correct output-scale already, returning a list of"
+ " layout-lines. This function takes an optional"
+ " @code{Object_key} argument.")
{
LY_ASSERT_SMOB (Score, score, 1);
LY_ASSERT_SMOB (Output_def, layout, 2);
LY_DEFINE (ly_grob_script_priority_less, "ly:grob-script-priority-less",
2, 0, 0, (SCM a, SCM b),
- "Compare two grobs by script priority. For internal use.")
+ "Compare two grobs by script priority. For internal use.")
{
Grob *i1 = unsmob_grob (a);
Grob *i2 = unsmob_grob (b);
LY_DEFINE (ly_make_simple_closure, "ly:make-simple-closure",
1, 0, 0, (SCM expr),
- "Make a simple closure. @var{expr} should be form of "
- "@code{(@var{func} @var{a1} @var{A2} ...)}, and will be invoked "
- "as @code{(@var{func} @var{delayed-arg} @var{a1} @var{a2} ... )}.")
+ "Make a simple closure. @var{expr} should be form of"
+ " @code{(@var{func} @var{a1} @var{A2} @dots{})}, and will be"
+ " invoked as @code{(@var{func} @var{delayed-arg} @var{a1}"
+ " @var{a2} @dots{})}.")
{
SCM z;
LY_DEFINE (ly_eval_simple_closure, "ly:eval-simple-closure",
2, 2, 0, (SCM delayed, SCM closure, SCM scm_start, SCM scm_end),
- "Evaluate a simple closure with the given delayed argument. "
- "If start and end are defined, evaluate it purely with those "
- "start- and end-points.")
+ "Evaluate a simple @var{closure} with the given @var{delayed}"
+ " argument. If @var{scm-start} and @var{scm-end} are defined,"
+ " evaluate it purely with those start and end points.")
{
bool pure = (scm_is_number (scm_start) && scm_is_number (scm_end));
int start = robust_scm2int (scm_start, 0);
LY_DEFINE (ly_solve_spring_rod_problem, "ly:solve-spring-rod-problem",
4, 1, 0, (SCM springs, SCM rods, SCM length, SCM ragged),
- "Solve a spring and rod problem for @var{count} objects, that "
- "are connected by @var{count-1} springs, and an arbitrary number of rods "
- "Springs have the format (ideal, inverse_hooke) and rods (idx1, idx2, distance) "
- "@var{length} is a number, @var{ragged} a boolean "
- "Return: a list containing the force (positive for stretching, "
- "negative for compressing and #f for non-satisfied constraints) "
- "followed by the @var{spring-count}+1 positions of the objects. ")
+ "Solve a spring and rod problem for @var{count} objects, that"
+ " are connected by @var{count}-1 @var{springs}, and an arbitrary"
+ " number of @var{rods}. @var{count} is implicitly given by"
+ " @var{springs} and @var{rods}. The @var{springs} argument has"
+ " the format @code{(ideal, inverse_hook)} and @var{rods} is of"
+ " the form @code{(idx1, idx2, distance)}.\n"
+ "\n"
+ "@var{length} is a number, @var{ragged} a boolean.\n"
+ "\n"
+ "The function returns a list containing the force (positive for"
+ " stretching, negative for compressing and @code{#f} for"
+ " non-satisfied constraints) followed by @var{spring-count}+1"
+ " positions of the objects.")
{
int len = scm_ilength (springs);
if (len == 0)
LY_DEFINE (ly_smob_protects, "ly:smob-protects",
0, 0, 0, (),
- "Return lily's internal smob protection list")
+ "Return LilyPond's internal smob protection list.")
{
return scm_is_pair (smob_protection_list)
? scm_cdr (smob_protection_list)
LY_DEFINE (ly_spanner_bound, "ly:spanner-bound",
2, 0, 0, (SCM slur, SCM dir),
- "Get one of the bounds of @var{spanner}. @var{dir} is @code{-1} "
- "for left, and @code{1} for right.")
+ "Get one of the bounds of @var{slur}. @var{dir} is @code{-1}"
+ " for left, and @code{1} for right.")
{
LY_ASSERT_TYPE (unsmob_spanner, slur, 1);
LY_ASSERT_TYPE (is_direction, dir,2);
LY_DEFINE (ly_spanner_p, "ly:spanner?",
1, 0, 0, (SCM g),
- "Is @var{g} a spanner object?")
+ "Is @var{g} a spanner object?")
{
Grob *me = unsmob_grob (g);
bool b = dynamic_cast<Spanner *> (me);
LY_DEFINE (ly_stencil_translate_axis, "ly:stencil-translate-axis",
3, 0, 0, (SCM stil, SCM amount, SCM axis),
- "Return a copy of @var{stil} but translated by @var{amount} in @var{axis} direction.")
+ "Return a copy of @var{stil} but translated by @var{amount}"
+ " in @var{axis} direction.")
{
Stencil *s = unsmob_stencil (stil);
LY_ASSERT_SMOB (Stencil, stil, 1);
LY_DEFINE (ly_stencil_translate, "ly:stencil-translate",
2, 0, 0, (SCM stil, SCM offset),
- "Return a @var{stil}, "
- "but translated by @var{offset} (a pair of numbers).")
+ "Return a @var{stil}, but translated by @var{offset}"
+ " (a pair of numbers).")
{
Stencil *s = unsmob_stencil (stil);
LY_ASSERT_SMOB (Stencil, stil, 1);
LY_DEFINE (ly_stencil_extent, "ly:stencil-extent",
2, 0, 0, (SCM stil, SCM axis),
- "Return a pair of numbers signifying the extent of @var{stil} in "
- "@var{axis} direction (0 or 1 for x and y axis respectively).")
+ "Return a pair of numbers signifying the extent of @var{stil} in"
+ " @var{axis} direction (@code{0} or @code{1} for x and"
+ " y@tie{}axis, respectively).")
{
Stencil *s = unsmob_stencil (stil);
LY_ASSERT_SMOB (Stencil, stil, 1);
LY_DEFINE (ly_stencil_empty_p, "ly:stencil-empty?",
1, 0, 0, (SCM stil),
- "Return whether @var{stil} is empty ")
+ "Return whether @var{stil} is empty.")
{
Stencil *s = unsmob_stencil (stil);
LY_ASSERT_SMOB (Stencil, stil, 1);
SCM second,
SCM padding,
SCM minimum),
- "Construct a stencil by putting @var{second} next to @var{first}. "
- "@var{axis} can be 0 (x-axis) or 1 (y-axis), "
- "@var{direction} can be -1 (left or down) or 1 (right or up). "
- "The stencils are juxtaposed with @var{padding} as extra space. "
- "If this puts the reference points closer than @var{minimum}, "
- "they are moved by the latter amount."
- "@var{first} and @var{second} may also be '() or #f.")
+ "Construct a stencil by putting @var{second} next to @var{first}."
+ " @var{axis} can be 0 (x-axis) or@tie{}1 (y-axis)."
+ " @var{direction} can be -1 (left or down) or@tie{}1 (right or"
+ " up). The stencils are juxtaposed with @var{padding} as extra"
+ " space. If this puts the reference points closer than"
+ " @var{minimum}, they are moved by the latter amount."
+ " @var{first} and @var{second} may also be @code{'()} or"
+ " @code{#f}.")
{
Stencil *s1 = unsmob_stencil (first);
Stencil *s2 = unsmob_stencil (second);
LY_DEFINE (ly_stencil_add, "ly:stencil-add",
0, 0, 1, (SCM args),
- "Combine stencils. Takes any number of arguments.")
+ "Combine stencils. Takes any number of arguments.")
{
#define FUNC_NAME __FUNCTION__
SCM_VALIDATE_REST_ARGUMENT (args);
LY_DEFINE (ly_make_stencil, "ly:make-stencil",
1, 2, 0, (SCM expr, SCM xext, SCM yext),
- "Stencils are device independent output expressions. "
- "They carry two pieces of information:\n"
-
+ "Stencils are device independent output expressions."
+ " They carry two pieces of information:\n"
+ "\n"
"@enumerate\n"
-
"@item\n"
- "A specification of how to print this object. "
- "This specification is processed by the output backends, "
- "for example @file{scm/output-ps.scm}.\n"
-
+ "A specification of how to print this object."
+ " This specification is processed by the output backends,"
+ " for example @file{scm/output-ps.scm}.\n"
+ "\n"
"@item\n"
- "The vertical and horizontal extents of the object, "
- "given as pairs. "
- "If an extent is unspecified (or if you use "
- "@code{(1000 . -1000)} as its value), it is taken to be empty.\n"
-
+ "The vertical and horizontal extents of the object, given as"
+ " pairs. If an extent is unspecified (or if you use"
+ " @code{(1000 . -1000)} as its value), it is taken to be empty.\n"
"@end enumerate\n")
{
SCM_ASSERT_TYPE (!scm_is_pair (expr)
LY_DEFINE (ly_stencil_aligned_to, "ly:stencil-aligned-to",
3, 0, 0, (SCM stil, SCM axis, SCM dir),
- "Align @var{stil} using its own extents. "
- "@var{dir} is a number -1, 1 are left and right respectively. "
- "Other values are interpolated (so 0 means the center).")
+ "Align @var{stil} using its own extents. @var{dir} is a number."
+ " @code{-1} and @code{1} are left and right, respectively."
+ " Other values are interpolated (so @code{0} means the center).")
{
LY_ASSERT_SMOB (Stencil, stil, 1);
LY_ASSERT_TYPE (is_axis, axis, 2);
LY_DEFINE (ly_stencil_fonts, "ly:stencil-fonts",
1, 0, 0, (SCM s),
- " Analyse @var{s}, and return a list of fonts used in @var{s}.")
+ "Analyze @var{s}, and return a list of fonts used"
+ " in@tie{}@var{s}.")
{
LY_ASSERT_SMOB (Stencil, s, 1);
Stencil *stil = unsmob_stencil (s);
LY_DEFINE (ly_interpret_stencil_expression, "ly:interpret-stencil-expression",
4, 0, 0, (SCM expr, SCM func, SCM arg1, SCM offset),
- "Parse EXPR, feed bits to FUNC with first arg ARG1")
+ "Parse @var{expr}, feed bits to @var{func} with first arg"
+ " @var{arg1} having offset @var{offset}.")
{
LY_ASSERT_TYPE (ly_is_procedure, func, 2);
LY_DEFINE (ly_bracket, "ly:bracket",
4, 0, 0,
(SCM a, SCM iv, SCM t, SCM p),
- "Make a bracket in direction @var{a}. The extent of the bracket is "
- "given by @var{iv}. The wings protude by an amount of @var{p}, which "
- "may be negative. The thickness is given by @var{t}.")
+ "Make a bracket in direction@tie{}@var{a}. The extent of the"
+ " bracket is given by @var{iv}. The wings protude by an amount"
+ " of@tie{}@var{p}, which may be negative. The thickness is given"
+ " by@tie{}@var{t}.")
{
LY_ASSERT_TYPE (is_axis, a, 1);
LY_ASSERT_TYPE (is_number_pair, iv, 2);
LY_DEFINE (ly_stencil_rotate, "ly:stencil-rotate",
4, 0, 0, (SCM stil, SCM angle, SCM x, SCM y),
- "Return a @var{stil} rotated @var{angle} degrees around point (@var{x}, @var{y}).")
+ "Return a stencil @var{stil} rotated @var{angle} degrees around"
+ " point (@var{x}, @var{y}).")
{
Stencil *s = unsmob_stencil (stil);
LY_ASSERT_SMOB (Stencil, stil, 1);
LY_DEFINE (ly_round_filled_box, "ly:round-filled-box",
3, 0, 0,
(SCM xext, SCM yext, SCM blot),
- "Make a @code{Stencil} "
- "that prints a black box of dimensions @var{xext}, "
- "@var{yext} and roundness @var{blot}.")
+ "Make a @code{Stencil} object that prints a black box of"
+ " dimensions @var{xext}, @var{yext} and roundness @var{blot}.")
{
LY_ASSERT_TYPE (is_number_pair, xext, 1);
LY_ASSERT_TYPE (is_number_pair, yext, 2);
LY_DEFINE (ly_register_stencil_expression, "ly:register-stencil-expression",
1, 0, 0,
(SCM symbol),
- "Add @var{symbol} as head of a stencil expression")
+ "Add @var{symbol} as head of a stencil expression.")
{
LY_ASSERT_TYPE (ly_is_symbol, symbol, 1);
register_stencil_head (symbol);
LY_DEFINE (ly_make_stream_event, "ly:make-stream-event",
1, 1, 0, (SCM cl, SCM proplist),
- "Creates a stream event of class @var{cl} with the given mutable property list.\n" )
+ "Create a stream event of class @var{cl} with the given"
+ " mutable property list.")
{
LY_ASSERT_TYPE (ly_is_symbol, cl, 1);
LY_DEFINE (ly_event_property, "ly:event-property",
2, 0, 0, (SCM sev, SCM sym),
- "Get the property @var{sym} of stream event @var{mus}.\n"
- "If @var{sym} is undefined, return @code{'()}.\n")
+ "Get the property @var{sym} of stream event @var{mus}."
+ " If @var{sym} is undefined, return @code{'()}.")
{
LY_ASSERT_SMOB (Stream_event, sev, 1);
LY_ASSERT_TYPE (ly_is_symbol, sym, 2);
LY_DEFINE (ly_event_deep_copy, "ly:event-deep-copy",
1, 0, 0, (SCM m),
- "Copy @var{m} and all sub expressions of @var{m}")
+ "Copy @var{m} and all sub expressions of@tie{}@var{m}.")
{
SCM copy = m;
if (Stream_event *ev = unsmob_stream_event (m))
LY_DEFINE (ly_system_print, "ly:system-print",
1, 0, 0, (SCM system),
- "Draw the system and return the prob containing its "
- "stencil.")
+ "Draw the system and return the prob containing its"
+ " stencil.")
{
Grob *me = unsmob_grob (system);
System *me_system = dynamic_cast<System*> (me);
LY_DEFINE (ly_system_stretch, "ly:system-stretch",
2, 0, 0, (SCM system, SCM amount_scm),
- "Stretch the system vertically by the given amount. "
- "This must be called before the system is drawn (for example "
- "with ly:system-print).")
+ "Stretch the system vertically by the given amount."
+ " This must be called before the system is drawn (for example"
+ " with @code{ly:system-print}).")
{
Grob *me = unsmob_grob (system);
Real amount = robust_scm2double (amount_scm, 0.0);
}
MAKE_SCHEME_CALLBACK_WITH_OPTARGS (Text_interface, interpret_markup, 3, 0,
- "Convert a text markup into a stencil. "
-"Takes 3 arguments, @var{layout}, @var{props} and @var{markup}. "
-"\n\n"
-"@var{layout} is a @code{\\layout} block; it may be obtained from a grob with "
-"@code{ly:grob-layout}. @var{props} is a alist chain, ie. a list of alists. "
-"This is typically obtained with "
-"@code{(ly:grob-alist-chain (ly:layout-lookup layout 'text-font-defaults))}. "
-"@var{markup} is the markup text to be processed. "
- );
+ "Convert a text markup into a stencil."
+" Takes three arguments, @var{layout}, @var{props}, and @var{markup}.\n"
+"\n"
+"@var{layout} is a @code{\\layout} block; it may be obtained from a grob with"
+" @code{ly:grob-layout}. @var{props} is a alist chain, ie. a list of alists."
+" This is typically obtained with"
+" @code{(ly:grob-alist-chain (ly:layout-lookup layout 'text-font-defaults))}."
+" @var{markup} is the markup text to be processed.");
SCM
Text_interface::interpret_markup (SCM layout_smob, SCM props, SCM markup)
{
LY_DEFINE (ly_load_text_dimensions, "ly:load-text-dimensions",
1, 0, 0,
(SCM dimension_alist),
- "Load dimensions from TeX in a (KEY . (W H D)) format alist")
+ "Load dimensions from @TeX{} in a @code{(KEY . (W H D))} format"
+ " alist.")
{
if (!text_dimension_hash_tab)
{
Scheme_hash_table *global_translator_dict = 0;
LY_DEFINE (get_all_translators, "ly:get-all-translators", 0, 0, 0, (),
- "Return a list of all translator objects that may be instantiated. ")
+ "Return a list of all translator objects that may be"
+ " instantiated.")
{
SCM l = global_translator_dict ? global_translator_dict->to_alist () : SCM_EOL;
LY_DEFINE (ly_translator_name, "ly:translator-name",
1, 0, 0, (SCM trans),
- "Return the type name of the translator object @var{trans}. "
- "The name is a symbol.")
+ "Return the type name of the translator object @var{trans}."
+ " The name is a symbol.")
{
LY_ASSERT_SMOB (Translator, trans, 1);
Translator *tr = unsmob_translator (trans);
LY_DEFINE (ly_translator_description, "ly:translator-description",
1, 0, 0, (SCM me),
- "Return an alist of properties of translator @var{me}.")
+ "Return an alist of properties of translator @var{me}.")
{
LY_ASSERT_SMOB (Translator, me, 1);
Translator *tr = unsmob_translator (me);
LY_DEFINE (ly_get_listened_event_classes, "ly:get-listened-event-classes",
0, 0, 0, (),
- "Returns a list of all event classes that some translator listens to.")
+ "Return a list of all event classes that some translator listens"
+ " to.")
{
ensure_listened_hash ();
return ly_hash_table_keys (listened_event_class_table);
(define (all-grobs-doc)
(make <texi-node>
#:name "All layout objects"
- #:desc "Description and defaults for all Grobs"
+ #:desc "Description and defaults for all graphical objects (grobs)."
#:children
(map (lambda (x) (grob-doc (cdr x))) all-grob-descriptions)))
(define (all-interfaces-doc)
(make <texi-node>
#:name "Graphical Object Interfaces"
- #:desc "Building blocks of graphical objects"
+ #:desc "Building blocks of graphical objects."
#:children
(map interface-doc interface-description-alist)))
(define (backend-doc-node)
(make <texi-node>
#:name "Backend"
- #:desc "Reference for the layout engine"
+ #:desc "Reference for the layout engine."
#:children
(list
(all-grobs-doc)
(all-interfaces-doc)
(make <texi-node>
#:name "User backend properties"
- #:desc "All tunable properties in a big list"
+ #:desc "All tunable properties in a big list."
#:text (backend-properties-doc-string all-user-grob-properties))
(make <texi-node>
#:name "Internal backend properties"
- #:desc "All internal layout properties in a big list"
+ #:desc "All internal layout properties in a big list."
#:text (backend-properties-doc-string all-internal-grob-properties)))))
(sfdocs (sort fdocs string<?)))
(make <texi-node>
#:name "Scheme functions"
- #:desc "Primitive functions exported by LilyPond"
+ #:desc "Primitive functions exported by LilyPond."
#:text
(apply string-append sfdocs))))
(define (music-props-doc)
(make <texi-node>
#:name "Music properties"
- #:desc "All music properties, including descriptions"
+ #:desc "All music properties, including descriptions."
#:text
(let* ((ps (sort (map symbol->string all-music-properties) string<?))
(descs (map (lambda (prop)
(string-append
"\nMusic event type @code{"
(symbol->string (car entry))
- "} is in Music objects of type "
+ "} is in music objects of type "
(human-listify
(sort
(map (lambda (x) (ref-ify (symbol->string x)))
(define (music-doc-node)
(make <texi-node>
#:name "Music definitions"
- #:desc "Definition of the Input data structures"
+ #:desc "Definition of the input data structures."
#:children
(list
(music-expressions-doc)
(make <texi-node>
#:name "Contexts"
- #:desc "Complete descriptions of all contexts"
+ #:desc "Complete descriptions of all contexts."
#:children
(map context-doc contexts))))
(define (all-engravers-doc)
(make <texi-node>
#:name "Engravers"
- #:desc "All separate engravers"
+ #:desc "All separate engravers."
#:text "See @usermanref{Modifying context plug-ins}."
#:children
(map engraver-doc all-engravers-list)))
(define (translation-doc-node)
(make <texi-node>
#:name "Translation"
- #:desc "From music to layout"
+ #:desc "From music to layout."
#:children
(list
(all-contexts-doc)
(all-engravers-doc)
(make <texi-node>
#:name "Tunable context properties"
- #:desc "All tunable context properties"
+ #:desc "All tunable context properties."
#:text (translation-properties-doc-string
all-user-translation-properties))
(make <texi-node>
#:name "Internal context properties"
- #:desc "All internal context properties"
+ #:desc "All internal context properties."
#:text (translation-properties-doc-string
all-internal-translation-properties)))))
(make <texi-node>
#:name "Top"
#:text
- (string-append "This is the program reference for LilyPond version " (lilypond-version))
+ (string-append "This is the program reference for version "
+ (lilypond-version)
+ " of LilyPond, the GNU music typesetter.")
#:children
(list
. string-to-use)
"
(string-append
- "\n@table @asis\n"
+ "\n"
+ "@quotation\n"
+ "@table @asis\n"
(apply string-append (map one-item->texi items-alist))
- "\n@end table\n"))
+ "\n"
+ "@end table\n"
+ "@end quotation\n"))
(define (texi-menu items-alist)
"Generate what is between @menu and @end menu."