better LSR to lilypond snippet conversion tool

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

better LSR to lilypond snippet conversion tool

Werner LEMBERG

Attached you can find a Perl script `lsr-snippets.pl' intended to
provide a better conversion from LSR input to lilypond snippets as
found in the git.

* It uses the SQL dump of the LSR database as input.

* It `normalizes' the data by removing trailing spaces, removing
  leading and trailing empty lines, and converting CRLF and CR line
  endings uniformly to `\n'.

* It uses the `pandoc' program to do the HTML to texinfo conversion,
  together with additional pre- and post-processing to overcome some
  limitations of that tool (I used version 2.6 for testing; it is
  expected that those limitations are fixed in the next major Pandoc
  release).

* It emits a text dump of all snippets.

* It generates snippet files for all approved documentation snippets.
  In other words, it generates the same files found in the `docs'
  subdirectory of the LSR snippet file tarball as distributed in

    http://lsr.di.unimi.it/download/

Right now, this script replaces some functionality of LilyPond's
`makelsr.py' script, namely the file extraction and the insertion of
the `lsrtags' string (currently commented out to allow simpler
comparison with the LSR snippet file tarball); however, it doesn't
apply `convert-ly' and the insertion of other markers like the `DO NOT
EDIT' block or the `begin verbatim' string.

I've also attached the following files, which compares the LSR tarball
files with the ones created by the script.

  lsr-snippets-docs-2019-10-07.diff-w    Diff file ignoring space
                                         changes
  lsr-snippets-docs-2019-10-07.diff-wbB  Diff file ignoring empty line
                                         differences, too
  lsr-snippets-docs-2019-10-07.dwdiff    massaged `dwdiff; color
                                         output

The first and second files show that a lot of `<p>' markers are
missing in the snippets.  The third file (to be viewed with a `less'
or `more' pager that understands LSR text color commands) shows the
improved HTML to texinfo conversion done by pandoc, covering more HTML
tags than the currently used Java script.  It also shows that some
`<br>' tags should be replaced with `<p>'.

I'm not sure how to proceed.  Shall I adapt `makelsr.py' to start
where this script stops?


    Werner

# lsr-snippets.pl
#
# Written 2019 by Werner Lemberg <[hidden email]>


#############################################################################
##                                                                         ##
## To allow easy diff comparison with the files from the existing LSR      ##
## snippets tarball, this script currently refrains from some formatting   ##
## improvements.  However, it already contains lines marked with XXX that  ##
## should be deleted or added (as described) after the diffing process has ##
## been performed.                                                         ##
##                                                                         ##
#############################################################################


# Usage:
#
#   perl lsr-snippets.pl < lsr.mysqldump > lsr.txt

# This script does two things.
#
# * Extract all approved documentation snippets from the daily SQL database
#   dump of the LilyPond Snippet Repository (LSR) available at
#
#     http://lsr.di.unimi.it/download/
#
#   The files are created in the current directory; its file names are
#   derived from the snippet titles.  Additionally, various files named
#   `winds.snippet-list' or `connecting-nots.snippet-list' are created that
#   list the snippets grouped by tags assigned in the database.
#
#   Note that `approved documentation snippets' is a subset of the available
#   snippets in the LSR.
#
# * Write a text dump of all snippets (omitting binary fields) in the SQL
#   database dump to stdout.


use 5.14.0; # We use `s///r'.
use strict;
use warnings;

# Access mysqldump files without the need of mysql tools.
use MySQL::Dump::Parser::XS;
# Use `pandoc' for converting HTML documentation to texinfo format.
use Pandoc;


pandoc or die "'pandoc' executable not found";


# We open the LSR database dump in binary mode since it contains PNG images.
binmode(STDIN);


my $parser = MySQL::Dump::Parser::XS->new;


# Parse input and store all table entries in the `%tables' hash as arrays.
my %tables;

while (my $line = <STDIN>) {
  my @entries = $parser->parse($line);
  my $table_name = $parser->current_target_table();

  push @{$tables{$table_name}} => @entries if $table_name;
}


# Function:  Convert tag and file names, similar to the code in the original
#            Java implementation used to extract LSR snippets.  We
#            additionally remove (simple) HTML tags.
#
# Arguments: $s    String to be manipulated.
#
sub convert_name {
  my ($s) = @_;

  # Remove HTML start and end tags.
  $s =~ s| < /? [a-zA-Z0-9]+ .*? > ||gx;

  # Translate some characters not generally allowed in file names.
  $s =~ tr[* /:<>?|_;\\]
          [+\-\-\-\-\-\-\-\-\-\-];

  # Remove some problematic characters entirely.
  $s =~ s/[()"']+//g;

  # Convert to lowercase.
  $s = lc($s);
}


# Access entries of `tag' table and build a hash `%tags' to map ID numbers
# onto the corresponding tag names.
my $tag_table = $tables{"tag"};
my %tags;

for my $entry (@{$tag_table}) {
  $tags{$entry->{"id"}} = convert_name($entry->{"name"});
}


# Access entries of `snippet' table.
my $snippet_table = $tables{"snippet"};
my @column_names = $parser->columns("snippet");

my %snippet_lists;


# Function:  Replace numeric tags with its names.  Tag fields in the snippet
#            table are called `id_tag0_tag', `id_tag1_tag', etc.
#
# Arguments: $idx      Index.
#            $entry    Reference to snippet table hash.
#
sub use_tag_name {
  my ($idx, $entry) = @_;

  if (defined($entry->{"id_tag${idx}_tag"})) {
    my $tag = $entry->{"id_tag${idx}_tag"};
    $entry->{"id_tag${idx}_tag"} = $tags{$tag};
  }
}


# Function:  Store snippet file name in the `%snippet_lists' hash (as a
#            sub-hash entry so that we can easily check later on whether it
#            is approved).
#
# Arguments: $idx         Index.
#            $filename    File name.
#            $entry       Reference to snippet table hash.
#
use constant APPROVED => 1;

sub add_to_snippet_list {
  my ($idx, $filename, $entry) = @_;

  if (defined($entry->{"id_tag${idx}_tag"})) {
    $snippet_lists{$entry->{"id_tag${idx}_tag"}}->{$filename}
      = $entry->{"approved"} == APPROVED;
  }
}


# The next loop over all snippet entries does the following actions.
#
# * Add a new field `filename' to the snippet table, containing file names
#   derived from snippet titles.
# * Replace tag IDs with tag names.
# * Fill the `%snippet_lists' hash.
for my $entry (@{$snippet_table}) {
  if (!defined($entry->{"title"})) {
    my $id = $entry->{"id"};
    my $filename = "snippet-$id.ly";

    warn "snippet $id has no title; using '$filename' as file name\n";

    $entry->{"filename"} = $filename;
  }
  else {
    $entry->{"filename"} = convert_name($entry->{"title"}) . ".ly";
  }

  # There are seven tag fields per entry in the snippet table.
  for my $idx (0 .. 6) {
    use_tag_name($idx, $entry);
    add_to_snippet_list($idx, $entry->{"filename"}, $entry);
  }
}


# Write snippet lists.
for my $list (keys %snippet_lists) {
  # Skip unassigned tags (i.e., lists without entries).
  next if !keys %{$snippet_lists{$list}};

  my $filename = "$list.snippet-list";
  open(my $fh, ">", $filename) || die "Can't open $filename: $!";

  # Ignore file extension while sorting file names.
  for my $snippet (sort { my ($aa, $bb) = map { s/\.ly$//r } ($a, $b);
                          $aa cmp $bb;
                        } keys %{$snippet_lists{$list}}) {
    # Only take approved snippets from the `docs' category.
    if (defined($snippet_lists{"docs"}->{$snippet})
        && $snippet_lists{"docs"}->{$snippet} == APPROVED) {
      print $fh "$snippet\n";
    }
  }

  close($fh) || warn "Can't close $filename: $!";
}


# Function:  Clean up data entries.
#
# Arguments: $data    Data to be manipulated.
#
sub normalize_text {
  my ($data) = @_;

  # Make line endings uniform.
  $data =~ s/(\015\012?|\012)/\n/g;

  # Remove trailing (horizontal) whitespace from every line.
  $data =~ s/\h+$//gm;

  # Remove leading and trailing empty lines.
  $data =~ s/^\n+//;
  $data =~ s/\n+$//;

  return $data;
}


# Start and end of the documentation section of a snippet.
use constant DOC_PREAMBLE => <<~'EOT';
  \version "2.18.0"

  \header {
  EOT

# XXX add empty line after brace
use constant DOC_POSTAMBLE => <<~'EOT';
  }
  EOT


# Emit all approved snippets from the `docs' category as files.
for my $entry (@{$snippet_table}) {
  my @lsrtags = ();
  my $is_docs = 0;

  # Collect tags in array `@lsrtags' (except tag `docs', which all of our
  # snippets have set).
  for my $idx (0 .. 6) {
    if (defined($entry->{"id_tag${idx}_tag"})) {
      if ($entry->{"id_tag${idx}_tag"} eq "docs") {
        $is_docs = 1;
      }
      else {
        push @lsrtags => $entry->{"id_tag${idx}_tag"};
      }
    }
  }

  # Skip non-documentation snippets.
  next unless $is_docs;
  # Skip unapproved snippets.
  next unless $entry->{"approved"} == APPROVED;

  my $filename = $entry->{"filename"};
  open(my $fh, ">", $filename) || die "Can't open $filename: $!";

  print $fh DOC_PREAMBLE;

  # XXX print $fh '  lsrtags = "' . join(", ", sort @lsrtags) . '"' . "\n\n";

  # We pre- and post-process the HTML data sent to and received from the
  # `pandoc' converter, respectively.
  #
  # Pre:
  #   * Convert `<samp>...</samp>' to `#samp#...#/samp#' since `pandoc'
  #     would swallow these tags unprocessed otherwise (tested with version
  #     2.6; not that pandoc's `raw_html' extension has no effect since the
  #     texinfo writer ignores it).
  #   * Ditto for `<var>...</var>'.
  #   * Escape backslashes and double quotation marks with a backslash since
  #     everything has to be emitted as as LilyPond strings (we do this
  #     before calling pandoc to avoid too long texinfo source code lines).
  #   * Convert a full stop followed by two spaces to `#:#' since `pandoc'
  #     would swallow the second space otherwise.  [This wouldn't be a
  #     problem in the final PDF or HTML output, however, it improves the
  #     snippet source code: Editors like Emacs use a double space after a
  #     full stop to indicate the end of a sentence in contrast to a single
  #     space after an abbreviation full stop.]
  #
  # Post:
  #   * Remove unusable texinfo node references to `Top'.
  #   * Convert `#samp#...#/samp#' to `@samp{...}'.
  #   * Ditto for `#var#...#/var#'.
  #   * Convert `#:#' back to full stop followed by two spaces.
  #   * Replace ``...'' with `@qq{...}'.
  #
  # Note that we don't check whether there is a paragraph boundary between
  # opening and closing HTML tag (ditto for ``...'').
  my $texidoc = normalize_text($entry->{"text"});
  $texidoc =~ s|<samp\h*>(.*?)</samp\h*>|#samp#$1#/samp#|sg;
  $texidoc =~ s|<var\h*>(.*?)</var\h*>|#var#$1#/var#|sg;
  $texidoc =~ s/\\/\\\\/g;
  $texidoc =~ s/"/\\"/g;
  $texidoc =~ s/\.  /#:#/g;

  $texidoc = pandoc->convert("html" => "texinfo", $texidoc, "--columns=71");

  $texidoc =~ s/\@node Top\n\@top Top\n\n//;
  $texidoc =~ s|#samp#(.*?)#/samp#|\@samp{$1}|sg;
  $texidoc =~ s|#var#(.*?)#/var#|\@var{$1}|sg;
  $texidoc =~ s/#:#/.  /g;
  $texidoc =~ s/``(.*?)''/\@qq{$1}/sg;
  print $fh '  texidoc = "' . "\n"
            . $texidoc . "\n"
            . "\n" # XXX remove
            . '"' . "\n";
  # XXX add . "\n";

  # The title gets stored as a LilyPond string, too.
  #
  # Note that LSR currently doesn't allow HTML code in titles.
  my $doctitle = normalize_text($entry->{"title"});
  $doctitle =~ s/\\/\\\\/g;
  $doctitle =~ s/"/\\"/g;
  print $fh '  doctitle = "' . $doctitle . '"' . "\n";

  print $fh DOC_POSTAMBLE;

  # Finally, emit the LilyPond snippet code itself.
  print $fh normalize_text($entry->{"snippet"}) . "\n"
            . "\n"; # XXX remove
}


# We want to see the constructed file name in the LSR text dump also, so add
# it to the array of column names.
push @column_names => "filename";


# Emit a text dump of all snippets (sorted by snippet ID) to stdout.
for my $entry (sort { $a->{"id"} <=> $b->{"id"} } @{$snippet_table}) {
  for my $name (@column_names) {
    # Ignore binary data.
    next if $name eq "image";
    next if $name eq "largeimage";

    # Ignore unset fields.
    next if !defined($entry->{$name});

    my $tag = "$name: ";
    print $tag;

    my $data = normalize_text($entry->{$name});

    # Insert a prefix to indicate continuation lines for nicer reading.
    my $prefix = " " x (length($tag) - 2) . "| ";
    my $n = 0;
    $data =~ s/^/$n++ ? "$prefix" : $&/gme; # Skip the first match.

    print "$data\n";
  }

  print "\n";
}

print "END OF DUMP\n"

# eof

--- old/accordion-discant-symbols.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/accordion-discant-symbols.ly 2019-10-08 12:21:00.897351740 +0200
@@ -172,3 +172,4 @@
   c4 d\accPiccolo e f
   c4 d\accViolin e f
 }
+
--- old/accordion-register-symbols.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/accordion-register-symbols.ly 2019-10-08 12:21:02.061278421 +0200
@@ -35,3 +35,4 @@
     >>
   }
 >>
+
--- old/adding-a-figured-bass-above-or-below-the-notes.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/adding-a-figured-bass-above-or-below-the-notes.ly 2019-10-08 12:21:01.869290515 +0200
@@ -8,7 +8,6 @@
 in a @code{Staff} context). Choices are @code{#UP} (or @code{#1}),
 @code{#CENTER} (or @code{#0}) and @code{#DOWN} (or @code{#-1}).
 
-
 This property can be changed as many times as you wish. Use
 @code{\\once \\override} if you don't want the override to apply to the
 whole score.
--- old/adding-an-extra-staff-at-a-line-break.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/adding-an-extra-staff-at-a-line-break.ly 2019-10-08 12:21:02.121274642 +0200
@@ -8,7 +8,6 @@
 workaround is to add a setting of
 @code{Staff.explicitKeySignatureVisibility} as is shown in the example.
 
-
 "
   doctitle = "Adding an extra staff at a line break"
 }
@@ -36,4 +35,3 @@
   }
 }
 
-
--- old/adding-an-extra-staff.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/adding-an-extra-staff.ly 2019-10-08 12:21:00.405382730 +0200
@@ -31,4 +31,3 @@
   >>
 }
 
-
--- old/adding-beams,-slurs,-ties-etc.-when-using-tuplet-and-non-tuplet-rhythms.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/adding-beams,-slurs,-ties-etc.-when-using-tuplet-and-non-tuplet-rhythms.ly 2019-10-08 12:21:02.049279177 +0200
@@ -3,14 +3,17 @@
 \header {
   texidoc = "
 LilyPond syntax can involve many unusual placements for parentheses,
-brackets etc., which might sometimes have to be interleaved. For
-example, when entering a manual beam, the left square bracket has to be
-placed after the starting note and its duration, not before. Similarly,
-the right square bracket should directly follow the note which is to be
-at the end of the requested beaming, even if this note happens to be
-inside a tuplet section. This snippet demonstrates how to combine
-manual beaming, manual slurs, ties and phrasing slurs with tuplet
-sections (enclosed within curly braces).
+brackets etc., which might sometimes have to be interleaved.
+
+For example, when entering a manual beam, the left square bracket has
+to be placed @emph{after} the starting note and its duration, not
+before. Similarly, the right square bracket should directly follow the
+note which is to be at the end of the requested beaming, even if this
+note happens to be inside a tuplet section.
+
+This snippet demonstrates how to combine manual beaming, manual slurs,
+ties and phrasing slurs with tuplet sections (enclosed within curly
+braces).
 
 "
   doctitle = "Adding beams, slurs, ties etc. when using tuplet and non-tuplet rhythms"
--- old/adding-extra-fingering-with-scheme.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/adding-extra-fingering-with-scheme.ly 2019-10-08 12:21:00.549373660 +0200
@@ -3,11 +3,10 @@
 \header {
   texidoc = "
 You can add additional elements to notes using @code{map-some-music}.
-In this example, an extra script is attached to a note.
-
-In general, first do a @code{\\displayMusic} of the music you want to
-create, then write a function that will work on the appropriate parts
-of the music for you.
+In this example, an extra script is attached to a note. In general,
+first do a @code{\\displayMusic} of the music you want to create, then
+write a function that will work on the appropriate parts of the music
+for you.
 
 "
   doctitle = "Adding extra fingering with scheme"
@@ -35,3 +34,4 @@
     \addScript _6 { c'4-3 <c' e' g'> }
   }
 }
+
--- old/adding-indicators-to-staves-which-get-split-after-a-break.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/adding-indicators-to-staves-which-get-split-after-a-break.ly 2019-10-08 12:21:04.465126996 +0200
@@ -3,10 +3,10 @@
 \header {
   texidoc = "
 This snippet defines the @code{\\splitStaffBarLine},
-@code{convUpStaffBarLine} and @code{convDownStaffBarLine} commands.
-These add arrows at a bar line, to denote that several voices sharing a
-staff will each continue on a staff of their own in the next system, or
-that voices split in this way recombine.
+@code{convUpStaffBarLine} and @code{convDownStaffBarLine}
+commands.  These add arrows at a bar line, to denote that several
+voices sharing a staff will each continue on a staff of their own in
+the next system, or that voices split in this way recombine.
 
 "
   doctitle = "Adding indicators to staves which get split after a break"
@@ -176,3 +176,4 @@
     }
   }
 }
+
--- old/adding-links-to-objects.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/adding-links-to-objects.ly 2019-10-08 12:21:06.129022183 +0200
@@ -4,7 +4,9 @@
   texidoc = "
 To add a link to a grob-stencil you could use @code{add-link} as
 defined here. Works with @code{\\override} and @code{\\tweak}.
-Drawback: @code{point-and-click} will be disturbed for the linked grobs.
+
+Drawback: @code{point-and-click} will be disturbed for the linked
+grobs.
 
 Limitation: Works for PDF only.
 
--- old/adding-markups-in-a-tablature.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/adding-markups-in-a-tablature.ly 2019-10-08 12:21:04.561120949 +0200
@@ -2,8 +2,10 @@
 
 \header {
   texidoc = "
-By default markups does not show in a tablature. To make them appear,
-simply use the command @code{\\revert TabStaff.TextScript.stencil}
+By default markups does not show in a tablature.
+
+To make them appear, simply use the command
+@code{\\revert TabStaff.TextScript.stencil}
 
 "
   doctitle = "Adding markups in a tablature"
--- old/adding-orchestral-cues-to-a-vocal-score.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/adding-orchestral-cues-to-a-vocal-score.ly 2019-10-08 12:21:05.217079628 +0200
@@ -75,3 +75,4 @@
     >>
   >>
 }
+
--- old/adding-parentheses-around-an-expressive-mark-or-chordal-note.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/adding-parentheses-around-an-expressive-mark-or-chordal-note.ly 2019-10-08 12:21:01.997282452 +0200
@@ -5,7 +5,6 @@
 The @code{\\parenthesize} function is a special tweak that encloses
 objects in parentheses.  The associated grob is @code{ParenthesesItem}.
 
-
 "
   doctitle = "Adding parentheses around an expressive mark or chordal note"
 }
--- old/adding-timing-marks-to-long-glissandi.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/adding-timing-marks-to-long-glissandi.ly 2019-10-08 12:21:05.149083911 +0200
@@ -4,10 +4,9 @@
   texidoc = "
 Skipped beats in very long glissandi are sometimes indicated by timing
 marks, often consisting of stems without noteheads.  Such stems can
-also be used to carry intermediate expression markings.
-
-If the stems do not align well with the glissando, they may need to be
-repositioned slightly.
+also be used to carry intermediate expression markings. If the stems do
+not align well with the glissando, they may need to be repositioned
+slightly.
 
 "
   doctitle = "Adding timing marks to long glissandi"
@@ -43,3 +42,4 @@
   \glissandoSkipOff
   b8\! r |
 }
+
--- old/adjusting-the-shape-of-falls-and-doits.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/adjusting-the-shape-of-falls-and-doits.ly 2019-10-08 12:21:00.929349724 +0200
@@ -3,7 +3,7 @@
 \header {
   texidoc = "
 The @code{shortest-duration-space} property may be tweaked to adjust
-the shape of falls and doits.
+the shape of @emph{falls} and @emph{doits}.
 
 "
   doctitle = "Adjusting the shape of falls and doits"
--- old/aligning-objects-created-with-the--mark-command.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/aligning-objects-created-with-the--mark-command.ly 2019-10-08 12:21:04.057152695 +0200
@@ -2,8 +2,8 @@
 
 \header {
   texidoc = "
-By default the @code{\\mark} command centers objects over a bar line.
-This behavior can be modified to align at right or left.  
+By default the @code{\\mark} command centers objects over a bar
+line.  This behavior can be modified to align at right or left.
 
 "
   doctitle = "Aligning objects created with the \\mark command"
--- old/alternative-bar-numbering.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/alternative-bar-numbering.ly 2019-10-08 12:21:05.165082904 +0200
@@ -26,3 +26,4 @@
     }
   c1
 }
+
--- old/ambitus.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/ambitus.ly 2019-10-08 12:21:01.165334859 +0200
@@ -4,9 +4,8 @@
   texidoc = "
 Ambitus indicate pitch ranges for voices.
 
-
-Accidentals only show up if they are not part of the key signature.
-@code{AmbitusNoteHead} grobs also have ledger lines.
+Accidentals only show up if they are not part of the key
+signature.  @code{AmbitusNoteHead} grobs also have ledger lines.
 
 "
   doctitle = "Ambitus"
@@ -34,6 +33,3 @@
   }
 >>
 
-
-
-
--- old/ancient-fonts.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/ancient-fonts.ly 2019-10-08 12:21:00.505376432 +0200
@@ -207,3 +207,4 @@
     }
   }
 }
+
--- old/ancient-headword.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/ancient-headword.ly 2019-10-08 12:21:04.393131531 +0200
@@ -126,4 +126,3 @@
   }
 }
 
-
--- old/ancient-notation-template----modern-transcription-of-gregorian-music.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/ancient-notation-template----modern-transcription-of-gregorian-music.ly 2019-10-08 12:21:02.433254989 +0200
@@ -45,3 +45,4 @@
     }
   }
 }
+
--- old/ancient-time-signatures.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/ancient-time-signatures.ly 2019-10-08 12:21:00.489377439 +0200
@@ -4,8 +4,6 @@
   texidoc = "
 Time signatures may also be engraved in an old style.
 
-
-
 "
   doctitle = "Ancient time signatures"
 }
--- old/applying-note-head-styles-depending-on-the-step-of-the-scale.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/applying-note-head-styles-depending-on-the-step-of-the-scale.ly 2019-10-08 12:21:01.557310167 +0200
@@ -4,11 +4,12 @@
   texidoc = "
 The @code{shapeNoteStyles} property can be used to define various note
 head styles for each step of the scale (as set by the key signature or
-the @code{tonic} property). This property requires a set of symbols,
-which can be purely arbitrary (geometrical expressions such as
-@code{triangle}, @code{cross}, and @code{xcircle} are allowed) or based
-on old American engraving tradition (some latin note names are also
-allowed).
+the @code{tonic} property).
+
+This property requires a set of symbols, which can be purely arbitrary
+(geometrical expressions such as @code{triangle}, @code{cross}, and
+@code{xcircle} are allowed) or based on old American engraving
+tradition (some latin note names are also allowed).
 
 That said, to imitate old American song books, there are several
 predefined note head styles available through shortcut commands such as
--- old/arabic-improvisation.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/arabic-improvisation.ly 2019-10-08 12:21:04.265139594 +0200
@@ -2,11 +2,12 @@
 
 \header {
   texidoc = "
-For improvisations or taqasim which are temporarily free, the time
-signature can be omitted and @code{\\cadenzaOn} can be used.  Adjusting
-the accidental style might be required, since the absence of bar lines
-will cause the accidental to be marked only once.  Here is an example
-of what could be the start of a hijaz improvisation:
+For improvisations or @emph{taqasim} which are temporarily free, the
+time signature can be omitted and @code{\\cadenzaOn} can be
+used.  Adjusting the accidental style might be required, since the
+absence of bar lines will cause the accidental to be marked only
+once.  Here is an example of what could be the start of a @emph{hijaz}
+improvisation:
 
 "
   doctitle = "Arabic improvisation"
--- old/arranging-separate-lyrics-on-a-single-line.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/arranging-separate-lyrics-on-a-single-line.ly 2019-10-08 12:21:04.421129767 +0200
@@ -3,9 +3,9 @@
 \header {
   texidoc = "
 Sometimes you may want to put lyrics for different performers on a
-single line: where there is rapidly alternating text, for example.
-This snippet shows how this can be done with @code{\\override
-VerticalAxisGroup.nonstaff-nonstaff-spacing.minimum-distance = ##f}.
+single line: where there is rapidly alternating text, for
+example.  This snippet shows how this can be done with
+@code{\\override VerticalAxisGroup.nonstaff-nonstaff-spacing.minimum-distance = ##f}.
 
 "
   doctitle = "Arranging separate lyrics on a single line"
@@ -60,3 +60,4 @@
     …and then I was like–
   }
 >>
+
--- old/automatically-change-durations.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/automatically-change-durations.ly 2019-10-08 12:21:01.245329820 +0200
@@ -3,8 +3,10 @@
 \header {
   texidoc = "
 @code{shiftDurations} can be used to change the note lengths of a piece
-of music. It takes two arguments - the scaling factor as a power of
-two, and the number of dots to be added as a positive integer.
+of music.
+
+It takes two arguments - the scaling factor as a power of two, and the
+number of dots to be added as a positive integer.
 
 "
   doctitle = "Automatically change durations"
@@ -32,4 +34,3 @@
   }
 }
 
-
--- old/automatically-changing-the-stem-direction-of-the-middle-note-based-on-the-melody.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/automatically-changing-the-stem-direction-of-the-middle-note-based-on-the-melody.ly 2019-10-08 12:21:05.349071314 +0200
@@ -23,3 +23,4 @@
     \override Stem.neutral-direction = #'()
   }
 }
+
--- old/bar-chords-notation-for-guitar-with-text-spanner.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/bar-chords-notation-for-guitar-with-text-spanner.ly 2019-10-08 12:21:03.725173608 +0200
@@ -3,13 +3,9 @@
 \header {
   texidoc = "
 Here is how to print bar chords (or barre chords) or half-bar chords
-(just uncomment the appropriate line for to select either one). The
-syntax is : @code{\\bbarre #\"fret_number\" note(s)}
-
-
-
-
+(just uncomment the appropriate line for to select either one).
 
+The syntax is : @code{\\bbarre #\"fret_number\" note(s)}
 
 "
   doctitle = "Bar chords notation for Guitar (with Text Spanner)"
@@ -63,3 +59,4 @@
 
 %% Syntaxe: \bbarre #"text" { notes } - text = any number of box
 \relative c'{ \clef "G_8" \stemUp \bbarre #"III" { <f a'>16[  c' d c d8] } }
+
--- old/beams-across-line-breaks.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/beams-across-line-breaks.ly 2019-10-08 12:21:03.833166805 +0200
@@ -2,8 +2,8 @@
 
 \header {
   texidoc = "
-Line breaks are normally forbidden when beams cross bar lines. This
-behavior can be changed as shown:
+Line breaks are normally forbidden when beams cross bar lines.@*
+This behavior can be changed as shown:
 
 "
   doctitle = "Beams across line breaks"
--- old/blanking-staff-lines-using-the--whiteout-command.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/blanking-staff-lines-using-the--whiteout-command.ly 2019-10-08 12:21:01.597307648 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-The @code{\\whiteout} command underlays a markup with a white box.
-Since staff lines are in a lower layer than most other grobs, this
-white box will not overlap any other grob.
+The @code{\\whiteout} command underlays a markup with a white
+box.  Since staff lines are in a lower layer than most other grobs,
+this white box will not overlap any other grob.
 
 "
   doctitle = "Blanking staff lines using the \\whiteout command"
--- old/broken-crescendo-hairpin.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/broken-crescendo-hairpin.ly 2019-10-08 12:21:00.997345441 +0200
@@ -5,15 +5,12 @@
 In order to make parts of a crescendo hairpin invisible, the following
 method is used: A white rectangle is drawn on top of the respective
 part of the crescendo hairpin, making it invisible.  The rectangle is
-defined as postscript code within a text markup.
-
-The markup command @code{with-dimensions} tells LilyPond to consider
-only the bottom edge of the rectangle when spacing it against the
-hairpin. The property @code{staff-padding} prevents the rectangle from
-fitting between the hairpin and staff.
-
-Make sure the hairpin is in a lower layer than the text markup to draw
-the rectangle over the hairpin.
+defined as postscript code within a text markup. The markup command
+@code{with-dimensions} tells LilyPond to consider only the bottom edge
+of the rectangle when spacing it against the hairpin. The property
+@code{staff-padding} prevents the rectangle from fitting between the
+hairpin and staff. Make sure the hairpin is in a lower layer than the
+text markup to draw the rectangle over the hairpin.
 
 "
   doctitle = "Broken Crescendo Hairpin"
@@ -38,3 +35,4 @@
     }
   >>
 }
+
--- old/caesura-railtracks-with-fermata.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/caesura-railtracks-with-fermata.ly 2019-10-08 12:21:00.665366353 +0200
@@ -27,3 +27,4 @@
   c2. \breathe c4
   \bar "|."
 }
+
--- old/centered-measure-numbers.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/centered-measure-numbers.ly 2019-10-08 12:21:04.533122713 +0200
@@ -42,3 +42,4 @@
     \stopMeasureCount
   }
 >>
+
--- old/center-text-below-hairpin-dynamics.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/center-text-below-hairpin-dynamics.ly 2019-10-08 12:21:01.329324529 +0200
@@ -3,9 +3,9 @@
 \header {
   texidoc = "
 This example provides a function to typeset a hairpin (de)crescendo
-with some additional text below it, such as @qq{molto} or @qq{poco}.
-The added text will change the direction according to the direction of
-the hairpin. The Hairpin is aligned to DynamicText.
+with some additional text below it, such as @qq{molto} or @qq{poco}. The
+added text will change the direction according to the direction of the
+hairpin. The Hairpin is aligned to DynamicText.
 
 The example also illustrates how to modify the way an object is
 normally printed, using some Scheme code.
@@ -72,4 +72,3 @@
   c2\ppppp\< c\f
 }
 
-
--- old/changing-a-single-notes-size-in-a-chord.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/changing-a-single-notes-size-in-a-chord.ly 2019-10-08 12:21:01.677302609 +0200
@@ -6,14 +6,11 @@
 @code{\\tweak} command inside a chord, by altering the @code{font-size}
 property.
 
-
 Inside the chord (within the brackets @code{< >}), before the note to
 be altered, place the @code{\\tweak} command, followed by
 @code{font-size} and define the proper size like @code{#-2} (a tiny
 note head).
 
-
-
 "
   doctitle = "Changing a single note's size in a chord"
 }
--- old/changing-beam-thickness-and-spacing.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/changing-beam-thickness-and-spacing.ly 2019-10-08 12:21:06.253014372 +0200
@@ -21,3 +21,4 @@
   \override Beam.length-fraction = #1.3
   c32 c c c
 }
+
--- old/changing-ottava-text.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/changing-ottava-text.ly 2019-10-08 12:21:05.409067534 +0200
@@ -5,9 +5,8 @@
 Internally, @code{\\ottava} sets the properties @code{ottavation} (for
 example, to @code{8va} or @code{8vb}) and @code{middleCPosition}.  To
 override the text of the bracket, set @code{ottavation} after invoking
-@code{\\ottava}.
-
-Short text is especially useful when a brief ottava is used.
+@code{\\ottava}. Short text is especially useful when a brief ottava is
+used.
 
 "
   doctitle = "Changing ottava text"
--- old/changing-text-and-spanner-styles-for-text-dynamics.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/changing-text-and-spanner-styles-for-text-dynamics.ly 2019-10-08 12:21:03.093213416 +0200
@@ -2,8 +2,8 @@
 
 \header {
   texidoc = "
-The text used for crescendos and decrescendos can be changed by
-modifying the context properties @code{crescendoText} and
+The text used for @emph{crescendos} and @emph{decrescendos} can be
+changed by modifying the context properties @code{crescendoText} and
 @code{decrescendoText}.
 
 The style of the spanner line can be changed by modifying the
--- old/changing-the-chord-names-to-german-or-semi-german-notation.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/changing-the-chord-names-to-german-or-semi-german-notation.ly 2019-10-08 12:21:00.445380211 +0200
@@ -6,9 +6,6 @@
 (@code{\\germanChords} replaces B and Bes with H and B) or semi-german
 (@code{\\semiGermanChords} replaces B and Bes with H and Bb).
 
-
-
-
 "
   doctitle = "Changing the chord names to German or semi-German notation"
 }
@@ -49,3 +46,4 @@
   }
   \context Voice { \scm }
 >>
+
--- old/changing-the-default-bar-lines.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/changing-the-default-bar-lines.ly 2019-10-08 12:21:05.657051913 +0200
@@ -37,3 +37,4 @@
   }
   \bar "|."
 }
+
--- old/changing-the-number-of-lines-in-a-staff.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/changing-the-number-of-lines-in-a-staff.ly 2019-10-08 12:21:00.261391801 +0200
@@ -5,9 +5,6 @@
 The number of lines in a staff may changed by overriding the
 @code{StaffSymbol} property @code{line-count}.
 
-
-
-
 "
   doctitle = "Changing the number of lines in a staff"
 }
--- old/changing-the-tuplet-number.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/changing-the-tuplet-number.ly 2019-10-08 12:21:00.277390793 +0200
@@ -4,10 +4,9 @@
   texidoc = "
 By default, only the numerator of the tuplet number is printed over the
 tuplet bracket, i.e., the numerator of the argument to the
-@code{\\tuplet} command.
-
-Alternatively, num:den of the tuplet number may be printed, or the
-tuplet number may be suppressed altogether.
+@code{\\tuplet} command. Alternatively, @emph{num}:@emph{den} of the
+tuplet number may be printed, or the tuplet number may be suppressed
+altogether.
 
 "
   doctitle = "Changing the tuplet number"
--- old/changing-time-signatures-inside-a-polymetric-section-using--scaledurations.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/changing-time-signatures-inside-a-polymetric-section-using--scaledurations.ly 2019-10-08 12:21:02.077277413 +0200
@@ -43,3 +43,4 @@
     c2 d e f
   }
 >>
+
--- old/chord-glissando-in-tablature.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/chord-glissando-in-tablature.ly 2019-10-08 12:21:05.645052669 +0200
@@ -3,9 +3,10 @@
 \header {
   texidoc = "
 Slides for chords are indicated by default in both @code{Staff} and
-@code{TabStaff}. String numbers are necessary for @code{TabStaff}
-because automatic string calculations are different for chords and for
-single notes.
+@code{TabStaff}.
+
+String numbers are necessary for @code{TabStaff} because automatic
+string calculations are different for chords and for single notes.
 
 "
   doctitle = "Chord glissando in tablature"
--- old/chord-names-alternative.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/chord-names-alternative.ly 2019-10-08 12:21:00.429381219 +0200
@@ -5,21 +5,16 @@
 Chord names are generated from a list of pitches.  The functions which
 construct these names can be customised.
 
-
 Here are shown chords following Ignatzek (pp. 17-18, 1995), used by
 default since LilyPond 1.7.20, compared with an alternative Jazz chord
-notation and Harald Banter’s (1987) notation.  A smaller font is used
+notation and Harald Banter's (1987) notation.  A smaller font is used
 in the latter case, as these tend to be overly verbose.
 
-
 This mirrors the mechanism originally used in early LilyPond versions
 (pre-1.7); not having been properly maintained, however, some features
 have been lost (mainly chord exception lists) and bugs have been
 introduced.
 
-
-
-
 "
   doctitle = "Chord names alternative"
 }
--- old/chords-headword.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/chords-headword.ly 2019-10-08 12:21:00.761360306 +0200
@@ -92,3 +92,4 @@
     }
   }
 }
+
--- old/chords-with-stretched-fingering-for-fretboards-and-tabvoice.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/chords-with-stretched-fingering-for-fretboards-and-tabvoice.ly 2019-10-08 12:21:06.281012608 +0200
@@ -2,12 +2,12 @@
 
 \header {
   texidoc = "
-Sometimes chords with a stretched fingering are required.  If not
-otherwise specified the context-property @code{maximumFretStretch} is
-set to @code{4}, though. Resulting in a warning about \"No string for
-pitch ...\" and the note is omitted.  You may set
-@code{maximumFretStretch} to an approppriate value or explecitely
-assign string-numbers to all notes of a chord.
+Sometimes chords with a stretched fingering are required.@*
+If not otherwise specified the context-property
+@code{maximumFretStretch} is set to @code{4}, though. Resulting in a
+warning about \"No string for pitch ...\" and the note is omitted.@*
+You may set @code{maximumFretStretch} to an approppriate value or
+explecitely assign string-numbers to all notes of a chord.
 
 "
   doctitle = "Chords with stretched fingering for FretBoards and TabVoice"
@@ -27,3 +27,4 @@
   \new FretBoards \mus
   \new TabVoice \mus
 >>
+
--- old/clip-systems.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/clip-systems.ly 2019-10-08 12:21:01.193333095 +0200
@@ -5,19 +5,15 @@
 This code shows how to clip (extract) snippets from a full score.
 
 This file needs to be run separately with @code{-dclip-systems}; the
-snippets page may not adequately show the results.
-
-The result will be files named
-@samp{base-from-start-to-end[-count].eps}.
-
+snippets page may not adequately show the results. The result will be
+files named
+@samp{@emph{base}-from-@emph{start}-to-@emph{end}[-@emph{count}].eps}.
 
 If system starts and ends are included, they include extents of the
 System grob, e.g., instrument names.
 
-
 Grace notes at the end point of the region are not included.
 
-
 Regions can span multiple systems.  In this case, multiple EPS files
 are generated.
 
--- old/combining-dynamics-with-markup-texts.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/combining-dynamics-with-markup-texts.ly 2019-10-08 12:21:01.305326041 +0200
@@ -3,8 +3,7 @@
 \header {
   texidoc = "
 Some dynamics may involve text indications (such as @qq{più forte} or
-@qq{piano subito}). These can be produced using a @code{\\markup}
-block.
+@qq{piano subito}). These can be produced using a @code{\\markup} block.
 
 "
   doctitle = "Combining dynamics with markup texts"
--- old/combining-two-parts-on-the-same-staff.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/combining-two-parts-on-the-same-staff.ly 2019-10-08 12:21:00.373384746 +0200
@@ -6,18 +6,16 @@
 combination of several different parts on the same staff.  Text
 directions such as @qq{solo} or @qq{a2} are added by default; to remove
 them, simply set the property @code{printPartCombineTexts} to @code{f}.
-For vocal scores (hymns), there is no need to add @qq{solo/a2} texts,
-so they should be switched off.  However, it might be better not to use
-it if there are any solos, as they won't be indicated.  In such cases,
+
+For vocal scores (hymns), there is no need to add @qq{solo/a2} texts, so
+they should be switched off.  However, it might be better not to use it
+if there are any solos, as they won't be indicated.  In such cases,
 standard polyphonic notation may be preferable.
 
 This snippet presents the three ways two parts can be printed on a same
 staff: standard polyphony, @code{\\partcombine} without texts, and
 @code{\\partcombine} with texts.
 
-
-
-
 "
   doctitle = "Combining two parts on the same staff"
 }
--- old/compound-time-signatures.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/compound-time-signatures.ly 2019-10-08 12:21:05.533059724 +0200
@@ -4,11 +4,9 @@
   texidoc = "
 Odd 20th century time signatures (such as \"5/8\") can often be played
 as compound time signatures (e.g. \"3/8 + 2/8\"), which combine two or
-more inequal metrics.
-
-LilyPond can make such music quite easy to read and play, by explicitly
-printing the compound time signatures and adapting the automatic
-beaming behavior.
+more inequal metrics. LilyPond can make such music quite easy to read
+and play, by explicitly printing the compound time signatures and
+adapting the automatic beaming behavior.
 
 "
   doctitle = "Compound time signatures"
@@ -19,3 +17,4 @@
   c8 fis, gis e d
   c8 d e4 gis8
 }
+
--- old/conducting-signs,-measure-grouping-signs.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/conducting-signs,-measure-grouping-signs.ly 2019-10-08 12:21:01.093339394 +0200
@@ -4,20 +4,18 @@
   texidoc = "
 Beat grouping within a measure is controlled by the context property
 @code{beatStructure}.  Values of @code{beatStructure} are established
-for many time signatures in @code{scm/time-signature-settings.scm}.
-Values of @code{beatStructure} can be changed or set with @code{\\set}.
-Alternatively, @code{\\time} can be used to both set the time signature
-and establish the beat structure. For this, you specify the internal
-grouping of beats in a measure as a list of numbers (in Scheme syntax)
-before the time signature.
-
-@code{\\time} applies to the @code{Timing} context, so it will not
-reset values of @code{beatStructure} or @code{baseMoment} that are set
-in other lower-level contexts, such as @code{Voice}.
-
-If the @code{Measure_grouping_engraver} is included in one of the
-display contexts, measure grouping signs will be created.  Such signs
-ease reading rhythmically complex modern music. In the example, the 9/8
+for many time signatures in
+@code{scm/time-signature-settings.scm}.  Values of @code{beatStructure}
+can be changed or set with @code{\\set}. Alternatively, @code{\\time}
+can be used to both set the time signature and establish the beat
+structure. For this, you specify the internal grouping of beats in a
+measure as a list of numbers (in Scheme syntax) before the time
+signature. @code{\\time} applies to the @code{Timing} context, so it
+will not reset values of @code{beatStructure} or @code{baseMoment} that
+are set in other lower-level contexts, such as @code{Voice}. If the
+@code{Measure_grouping_engraver} is included in one of the display
+contexts, measure grouping signs will be created.  Such signs ease
+reading rhythmically complex modern music. In the example, the 9/8
 measure is grouped in two different patterns using the two different
 methods, while the 5/8 measure is grouped according to the default
 setting in @code{scm/time-signature-settings.scm}:
@@ -43,3 +41,4 @@
     }
   }
 }
+
--- old/consistently-left-aligned-bar-numbers.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/consistently-left-aligned-bar-numbers.ly 2019-10-08 12:21:06.101023946 +0200
@@ -3,8 +3,10 @@
 \header {
   texidoc = "
 When left aligning bar numbers, overlapping problems may occur with
-Staves brackets.  The snippet solves this by keeping right aligned the
-first bar number following line breaks.
+Staves brackets.
+
+The snippet solves this by keeping right aligned the first bar number
+following line breaks.
 
 "
   doctitle = "Consistently left aligned bar numbers"
--- old/controlling-spanner-visibility-after-a-line-break.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/controlling-spanner-visibility-after-a-line-break.ly 2019-10-08 12:21:05.629053677 +0200
@@ -4,14 +4,11 @@
   texidoc = "
 The visibility of spanners which end on the first note following a line
 break is controlled by the @code{after-line-breaking} callback
-@code{ly:spanner::kill-zero-spanned-time}.
-
-For objects such as glissandos and hairpins, the default behaviour is
-to hide the spanner after a break; disabling the callback will allow
-the left-broken span to be shown.
-
-Conversely, spanners which are usually visible, such as text spans, can
-be hidden by enabling the callback.
+@code{ly:spanner::kill-zero-spanned-time}. For objects such as
+glissandos and hairpins, the default behaviour is to hide the spanner
+after a break; disabling the callback will allow the left-broken span
+to be shown. Conversely, spanners which are usually visible, such as
+text spans, can be hidden by enabling the callback.
 
 "
   doctitle = "Controlling spanner visibility after a line break"
--- old/controlling-the-vertical-ordering-of-scripts.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/controlling-the-vertical-ordering-of-scripts.ly 2019-10-08 12:21:03.249203590 +0200
@@ -5,11 +5,11 @@
 The vertical ordering of scripts is controlled with the
 @code{'script-priority} property. The lower this number, the closer it
 will be put to the note. In this example, the @code{TextScript} (the
-sharp symbol) first has the lowest priority, so it is put lowest in the
-first example. In the second, the prall trill (the @code{Script}) has
-the lowest, so it is on the inside. When two objects have the same
-priority, the order in which they are entered determines which one
-comes first.
+@emph{sharp} symbol) first has the lowest priority, so it is put lowest
+in the first example. In the second, the @emph{prall trill} (the
+@code{Script}) has the lowest, so it is on the inside. When two objects
+have the same priority, the order in which they are entered determines
+which one comes first.
 
 "
   doctitle = "Controlling the vertical ordering of scripts"
--- old/controlling-tuplet-bracket-visibility.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/controlling-tuplet-bracket-visibility.ly 2019-10-08 12:21:00.637368117 +0200
@@ -3,8 +3,9 @@
 \header {
   texidoc = "
 The default behavior of tuplet-bracket visibility is to print a bracket
-unless there is a beam of the same length as the tuplet. To control the
-visibility of tuplet brackets, set the property
+unless there is a beam of the same length as the tuplet.
+
+To control the visibility of tuplet brackets, set the property
 @code{'bracket-visibility} to either @code{#t} (always print a
 bracket), @code{#f} (never print a bracket) or @code{#'if-no-beam}
 (only print a bracket if there is no beam).
--- old/creating-a-delayed-turn.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-a-delayed-turn.ly 2019-10-08 12:21:04.377132539 +0200
@@ -5,9 +5,9 @@
 Creating a delayed turn, where the lower note of the turn uses the
 accidental, requires several overrides.  The
 @code{outside-staff-priority} property must be set to @code{#f}, as
-otherwise this would take precedence over the @code{avoid-slur
-property}.  Changing the fractions @code{2/3} and @code{1/3} adjusts
-the horizontal position.
+otherwise this would take precedence over the
+@code{avoid-slur property}.  Changing the fractions @code{2/3} and
+@code{1/3} adjusts the horizontal position.
 
 "
   doctitle = "Creating a delayed turn"
@@ -33,3 +33,4 @@
     }
   >>
 }
+
--- old/creating-arpeggios-across-notes-in-different-voices.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-arpeggios-across-notes-in-different-voices.ly 2019-10-08 12:21:03.365196283 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-An arpeggio can be drawn across notes in different voices on the same
-staff if the @code{Span_arpeggio_engraver} is added to the @code{Staff}
-context:
+An @emph{arpeggio} can be drawn across notes in different voices on the
+same staff if the @code{Span_arpeggio_engraver} is added to the
+@code{Staff} context:
 
 "
   doctitle = "Creating arpeggios across notes in different voices"
--- old/creating-a-sequence-of-notes-on-various-pitches.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-a-sequence-of-notes-on-various-pitches.ly 2019-10-08 12:21:01.969284216 +0200
@@ -3,10 +3,11 @@
 \header {
   texidoc = "
 In music that contains many occurrences of the same sequence of notes
-at different pitches, the following music function may prove useful.
-It takes a note, of which only the pitch is used.   This example
-creates the rhythm used throughout Mars, from Gustav Holst's The
-Planets.
+at different pitches, the following music function may prove
+useful.  It takes a note, of which only the pitch is used.  
+
+This example creates the rhythm used throughout @emph{Mars}, from
+Gustav Holst's @emph{The Planets}.
 
 "
   doctitle = "Creating a sequence of notes on various pitches"
--- old/creating-blank-staves.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/creating-blank-staves.ly 2019-10-08 12:21:00.165397848 +0200
@@ -55,4 +55,3 @@
 }
 %}
 
-
--- old/creating-cross-staff-arpeggios-in-a-piano-staff.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-cross-staff-arpeggios-in-a-piano-staff.ly 2019-10-08 12:21:03.337198047 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-In a @code{PianoStaff}, it is possible to let an arpeggio cross between
-the staves by setting the property @code{PianoStaff.connectArpeggios}.
-
+In a @code{PianoStaff}, it is possible to let an @emph{arpeggio} cross
+between the staves by setting the property
+@code{PianoStaff.connectArpeggios}.
 
 "
   doctitle = "Creating cross-staff arpeggios in a piano staff"
--- old/creating-cross-staff-arpeggios-in-other-contexts.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-cross-staff-arpeggios-in-other-contexts.ly 2019-10-08 12:21:03.349197291 +0200
@@ -2,7 +2,7 @@
 
 \header {
   texidoc = "
-Cross-staff arpeggios can be created in contexts other than
+Cross-staff @emph{arpeggios} can be created in contexts other than
 @code{GrandStaff}, @code{PianoStaff} and @code{StaffGroup} if the
 @code{Span_arpeggio_engraver} is included in the @code{Score} context.
 
--- old/creating-custom-dynamics-in-midi-output.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/creating-custom-dynamics-in-midi-output.ly 2019-10-08 12:21:04.777107343 +0200
@@ -6,7 +6,6 @@
 included in the default list, and assign it a specific value so that it
 can be used to affect MIDI output.
 
-
 The dynamic mark @code{\\rfz} is assigned a value of @code{0.9}.
 
 "
@@ -30,3 +29,4 @@
   \layout {}
   \midi {}
 }
+
--- old/creating-custom-key-signatures.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/creating-custom-key-signatures.ly 2019-10-08 12:21:04.705111879 +0200
@@ -32,3 +32,4 @@
   \key d\minor
   f bes, f bes,
 }
+
--- old/creating-double-digit-fingerings.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/creating-double-digit-fingerings.ly 2019-10-08 12:21:05.365070306 +0200
@@ -13,3 +13,4 @@
   c1-36
   c1-29
 }
+
--- old/creating-real-parenthesized-dynamics.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-real-parenthesized-dynamics.ly 2019-10-08 12:21:01.401319994 +0200
@@ -12,8 +12,6 @@
 regarded as a dynamic, and therefore will remain compatible with
 commands such as @code{\\dynamicUp} or @code{\\dynamicDown}.
 
-
-
 "
   doctitle = "Creating \"real\" parenthesized dynamics"
 }
@@ -30,3 +28,4 @@
 \relative c'' {
   c4\paren\f c c \dynamicUp c\paren\p
 }
+
--- old/creating-simultaneous-rehearsal-marks.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-simultaneous-rehearsal-marks.ly 2019-10-08 12:21:04.029154459 +0200
@@ -3,11 +3,13 @@
 \header {
   texidoc = "
 Unlike text scripts, rehearsal marks cannot be stacked at a particular
-point in a score: only one @code{RehearsalMark} object is created.
-Using an invisible measure and bar line, an extra rehearsal mark can be
-added, giving the appearance of two marks in the same column. This
-method may also prove useful for placing rehearsal marks at both the
-end of one system and the start of the following system.
+point in a score: only one @code{RehearsalMark} object is
+created.  Using an invisible measure and bar line, an extra rehearsal
+mark can be added, giving the appearance of two marks in the same
+column.
+
+This method may also prove useful for placing rehearsal marks at both
+the end of one system and the start of the following system.
 
 "
   doctitle = "Creating simultaneous rehearsal marks"
--- old/creating-slurs-across-voices.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/creating-slurs-across-voices.ly 2019-10-08 12:21:00.593370889 +0200
@@ -3,13 +3,9 @@
 \header {
   texidoc = "
 In some situations, it may be necessary to create slurs between notes
-from different voices.
-
-The solution is to add invisible notes to one of the voices, using
-@code{\\hideNotes}.
-
-This example is measure 235 of the Ciaconna from Bach's 2nd Partita for
-solo violin, BWV 1004.
+from different voices. The solution is to add invisible notes to one of
+the voices, using @code{\\hideNotes}. This example is measure 235 of
+the Ciaconna from Bach's 2nd Partita for solo violin, BWV 1004.
 
 "
   doctitle = "Creating slurs across voices"
--- old/cross-staff-chords---beaming-problems-workaround.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/cross-staff-chords---beaming-problems-workaround.ly 2019-10-08 12:21:02.137273634 +0200
@@ -7,8 +7,8 @@
 avoidance then arise.  If the stems from the lower staff were used in
 the following example, it would be necessary to change the automatic
 beam collision avoidance settings so that it doesn't detect collisions
-between staves using @code{\\override Staff.Beam.collision-voice-only =
-##t}
+between staves using
+@code{\\override Staff.Beam.collision-voice-only = ##t}
 
 "
   doctitle = "Cross-staff chords - beaming problems workaround"
--- old/cross-staff-stems.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/cross-staff-stems.ly 2019-10-08 12:21:05.425066527 +0200
@@ -3,9 +3,8 @@
 \header {
   texidoc = "
 This snippet shows the use of the @code{Span_stem_engraver} and
-@code{\\crossStaff} to connect stems across staves automatically.
-
-The stem length need not be specified, as the variable distance between
+@code{\\crossStaff} to connect stems across staves automatically. The
+stem length need not be specified, as the variable distance between
 noteheads and staves is calculated automatically.
 
 "
@@ -34,3 +33,4 @@
     }
   >>
 }
+
--- old/customize-drumpitchnames,-drumstyletable-and-drumpitchtable-in-layout-and-midi.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/customize-drumpitchnames,-drumstyletable-and-drumpitchtable-in-layout-and-midi.ly 2019-10-08 12:21:05.449065015 +0200
@@ -3,12 +3,21 @@
 \header {
   texidoc = "
 If you want to use customized drum-pitch-names for an own drum-style
-with proper output for layout and midi, follow the steps as
+with proper output for layout @emph{and} midi, follow the steps as
 demonstrated in the code below. In short:
 
-* define the names * define the appearence * tell LilyPond to use it
-for layout * assign pitches to the names * tell LilyPond to use them
-for midi
+@itemize
+@item
+define the names
+@item
+define the appearence
+@item
+tell LilyPond to use it for layout
+@item
+assign pitches to the names
+@item
+tell LilyPond to use them for midi
+@end itemize
 
 "
   doctitle = "Customize drumPitchNames, drumStyleTable and drumPitchTable in layout and midi"
@@ -136,3 +145,4 @@
   \layout {}
   \midi {}
 }
+
--- old/defining-an-engraver-in-scheme--ambitus-engraver.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/defining-an-engraver-in-scheme--ambitus-engraver.ly 2019-10-08 12:21:05.601055440 +0200
@@ -3,10 +3,8 @@
 \header {
   texidoc = "
 This example demonstrates how the ambitus engraver may be defined on
-the user side, with a Scheme engraver.
-
-This is basically a rewrite in Scheme of the code from
-@code{lily/ambitus-engraver.cc}.
+the user side, with a Scheme engraver. This is basically a rewrite in
+Scheme of the code from @code{lily/ambitus-engraver.cc}.
 
 "
   doctitle = "Defining an engraver in Scheme: ambitus engraver"
@@ -314,3 +312,4 @@
   >>
   \layout { \context { \Staff \consists #ambitus-engraver } }
 }
+
--- old/defining-predefined-fretboards-for-other-instruments.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/defining-predefined-fretboards-for-other-instruments.ly 2019-10-08 12:21:03.989156979 +0200
@@ -5,13 +5,12 @@
 Predefined fret diagrams can be added for new instruments in addition
 to the standards used for guitar.  This file shows how this is done by
 defining a new string-tuning and a few predefined fretboards for the
-Venezuelan cuatro.
+Venezuelan @emph{cuatro}.
 
 This file also shows how fingerings can be included in the chords used
 as reference points for the chord lookup, and displayed in  the fret
 diagram and the @code{TabStaff}, but not the music.
 
-
 These fretboards are not transposable because they contain string
 information.  This is planned to be corrected in the future.
 
--- old/demo-midiinstruments.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/demo-midiinstruments.ly 2019-10-08 12:21:02.205269351 +0200
@@ -3,9 +3,9 @@
 \header {
   texidoc = "
 Problem: How to know which @code{midiInstrument} would be best for your
-composition? Solution: A LilyPond demo file.
-
+composition?
 
+Solution: A LilyPond demo file.
 
 "
   doctitle = "Demo MidiInstruments"
--- old/different-font-size-settings-for-instrumentname-and-shortinstrumentname.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/different-font-size-settings-for-instrumentname-and-shortinstrumentname.ly 2019-10-08 12:21:05.381069298 +0200
@@ -59,3 +59,4 @@
    }
    { c''1 \break c'' \break c'' }
 >>
+
--- old/display-bracket-with-only-one-staff-in-a-system.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/display-bracket-with-only-one-staff-in-a-system.ly 2019-10-08 12:21:04.361133547 +0200
@@ -35,4 +35,3 @@
   >>
 }
 
-
--- old/displaying-a-whole-grandstaff-system-if-only-one-of-its-staves-is-alive.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/displaying-a-whole-grandstaff-system-if-only-one-of-its-staves-is-alive.ly 2019-10-08 12:21:06.157020419 +0200
@@ -6,13 +6,11 @@
 silent for a while and their staves can be removed for that time (with
 @code{\\removeEmptyStaves}).
 
-
-When they play again it is often preferred to show the staves of all
-instruments of such a group. this can be done adding the
+When they play again it is often preferred to show the staves of
+@emph{all instruments of such a group}. this can be done adding the
 @code{Keep_alive_together_engraver} in the grouper (e.g. a GrandStaff
 or a StaffGroup)
 
-
 In the example the violins are silent in the 2nd system and in the 3rd
 system. Only the first violin plays the last measure but the staff of
 the second violin is also displayed.
--- old/displaying-grob-ancestry.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/displaying-grob-ancestry.ly 2019-10-08 12:21:01.773296562 +0200
@@ -3,16 +3,14 @@
 \header {
   texidoc = "
 When working with grob callbacks, it can be helpful to understand a
-grob’s ancestry. Most grobs have parents which influence the
+grob's ancestry. Most grobs have parents which influence the
 positioning of the grob. X- and Y-parents influence the horizontal and
 vertical positions for the grob, respectively. Additionally, each
 parent may have parents of its own.
 
-
-Unfortunately, there are several aspects of a grob’s ancestry that can
+Unfortunately, there are several aspects of a grob's ancestry that can
 lead to confusion:
 
-
 * The types of parents a grob has may depend on context.
 
 * For some grobs, the X- and Y-parents are the same.
@@ -21,33 +19,20 @@
 
 * The concept of “generations” is misleading.
 
-
 For example, the @code{System} grob can be both parent (on the Y-side)
 and grandparent (twice on the X-side) to a @code{VerticalAlignment}
 grob.
 
-
-This macro prints (to the console) a textual representation of a grob’s
+This macro prints (to the console) a textual representation of a grob's
 ancestry.
 
 When called this way:
 
-@code{@{ \\once \\override NoteHead.before-line-breaking =
-#display-ancestry c @}}
+@code{@{ \\once \\override NoteHead.before-line-breaking = #display-ancestry c @}}
 
 The following output is generated:
 
-
-@code{NoteHead X,Y: NoteColumn
-     X: PaperColumn
-        X,Y: System
-     Y: VerticalAxisGroup
-        X: NonMusicalPaperColumn
-           X,Y: System
-        Y: VerticalAlignment
-           X: NonMusicalPaperColumn
-              X,Y: System
-           Y: System}
+@code{NoteHead X,Y: NoteColumn      X: PaperColumn         X,Y: System      Y: VerticalAxisGroup         X: NonMusicalPaperColumn            X,Y: System         Y: VerticalAlignment            X: NonMusicalPaperColumn               X,Y: System            Y: System}@*
 
 "
   doctitle = "Displaying grob ancestry"
--- old/drawing-circles-around-note-heads.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/drawing-circles-around-note-heads.ly 2019-10-08 12:21:05.233078620 +0200
@@ -21,4 +21,3 @@
 
 { \circle c'' }
 
-
--- old/editorial-headword.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/editorial-headword.ly 2019-10-08 12:21:00.773359551 +0200
@@ -2,10 +2,8 @@
 
 \header {
   texidoc = "
-NR 1.7 Editorial annotations
-
-Beethoven, Op. 31, No. 3 Piano sonata 18, Movt II, Scherzo Measures 9 -
-14
+NR 1.7 Editorial annotations Beethoven, Op. 31, No. 3 Piano sonata 18,
+Movt II, Scherzo Measures 9 - 14
 
 "
   doctitle = "Editorial headword"
--- old/engravers-one-by-one.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/engravers-one-by-one.ly 2019-10-08 12:21:01.649304373 +0200
@@ -2,29 +2,22 @@
 
 \header {
   texidoc = "
-The notation problem, creating a certain symbol, is handled by plugins.
- Each plugin is called an Engraver. In this example, engravers are
-switched on one by one, in the following order:
+The notation problem, creating a certain symbol, is handled by
+plugins.  Each plugin is called an Engraver. In this example, engravers
+are switched on one by one, in the following order:
 
 - note heads,
 
-
 - staff symbol,
 
-
 - clef,
 
-
 - stem,
 
-
 - beams, slurs, accents,
 
-
 - accidentals, bar lines, time signature and key signature.
 
-
-
 Engravers are grouped. For example, note heads, slurs, beams etc. form
 a @code{Voice} context. Engravers for key signature, accidentals, bar
 line, etc. form a @code{Staff} context.
@@ -269,4 +262,3 @@
   }
 }
 
-
--- old/engraving-tremolos-with-floating-beams.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/engraving-tremolos-with-floating-beams.ly 2019-10-08 12:21:04.113149168 +0200
@@ -11,8 +11,6 @@
 object, and the size of the gaps between beams and stems is set with
 the @code{'gap} property.
 
-
-
 "
   doctitle = "Engraving tremolos with floating beams"
 }
--- old/entering-several-tuplets-using-only-one--tuplet-command.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/entering-several-tuplets-using-only-one--tuplet-command.ly 2019-10-08 12:21:02.665240375 +0200
@@ -5,12 +5,11 @@
 The property @code{tupletSpannerDuration} sets how long each of the
 tuplets contained within the brackets after @code{\\tuplet} should
 last. Many consecutive tuplets can then be placed within a single
-@code{\\tuplet} expression, thus saving typing.
-
-There are several ways to set @code{tupletSpannerDuration}.  The
-command @code{\\tupletSpan} sets it to a given duration, and clears it
-when instead of a duration @code{\\default} is specified.  Another way
-is to use an optional argument with @code{\\tuplet}.
+@code{\\tuplet} expression, thus saving typing. There are several ways
+to set @code{tupletSpannerDuration}.  The command @code{\\tupletSpan}
+sets it to a given duration, and clears it when instead of a duration
+@code{\\default} is specified.  Another way is to use an optional
+argument with @code{\\tuplet}.
 
 "
   doctitle = "Entering several tuplets using only one \\tuplet command"
@@ -23,3 +22,4 @@
   \tuplet 3/2 { c8^"\\tupletSpan \\default" c c c c c }
   \tuplet 3/2 4 { c8^"\\tuplet 3/2 4 {...}" c c c c c }
 }
+
--- old/expressive-headword.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/expressive-headword.ly 2019-10-08 12:21:05.573057204 +0200
@@ -255,3 +255,4 @@
       r8 r4 r8
    }
 >>
+
--- old/extending-a-trillspanner.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/extending-a-trillspanner.ly 2019-10-08 12:21:00.389383739 +0200
@@ -4,8 +4,10 @@
   texidoc = "
 For @code{TrillSpanner}, the @code{minimum-length} property becomes
 effective only if the @code{set-spacing-rods} procedure is called
-explicitly.  To do this, the @code{springs-and-rods} property should be
-set to @code{ly:spanner::set-spacing-rods}.
+explicitly.
+
+To do this, the @code{springs-and-rods} property should be set to
+@code{ly:spanner::set-spacing-rods}.
 
 "
   doctitle = "Extending a TrillSpanner"
--- old/extending-glissandi-across-repeats.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/extending-glissandi-across-repeats.ly 2019-10-08 12:21:05.557058212 +0200
@@ -7,10 +7,9 @@
 start of each @code{\\alternative} block.  The grace note should be at
 the same pitch as the note which starts the initial glissando.  This is
 implemented here with a music function which takes the pitch of the
-grace note as its argument.
-
-Note that in polyphonic music the grace note must be matched with
-corresponding grace notes in all other voices.
+grace note as its argument. Note that in polyphonic music the grace
+note must be matched with corresponding grace notes in all other
+voices.
 
 "
   doctitle = "Extending glissandi across repeats"
@@ -59,3 +58,4 @@
     >>
   >>
 }
+
--- old/flamenco-notation.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/flamenco-notation.ly 2019-10-08 12:21:02.913224754 +0200
@@ -4,17 +4,25 @@
   texidoc = "
 For flamenco guitar, special notation is used:
 
-
-* a golpe symbol to indicate a slap on the guitar body with the nail of
-the ring finger * an arrow to indicate (the direction of) strokes *
+@itemize
+@item
+a @emph{golpe} symbol to indicate a slap on the guitar body with the
+nail of the ring finger
+@item
+an arrow to indicate (the direction of) strokes
+@item
 different letters for fingering (@qq{p}: thumb, @qq{i}: index finger,
-@qq{m}: middle finger, @qq{a}: ring finger and @qq{x}: little finger) *
-3- and 4-finger rasgueados; stroke upwards with all fingers, ending
-with an up- and down using the index finger * abanicos: strokes (in
-tuples) with thumb (down), little and index finger (both up). There's
-also an abanico 2 where middle and ring finger are used instead of the
-little finger. * alza pua: fast playing with the thumb
-
+@qq{m}: middle finger, @qq{a}: ring finger and @qq{x}: little finger)
+@item
+3- and 4-finger @emph{rasgueados}; stroke upwards with all fingers,
+ending with an up- and down using the index finger
+@item
+@emph{abanicos}: strokes (in tuples) with thumb (down), little and
+index finger (both up). There's also an @emph{abanico 2} where middle
+and ring finger are used instead of the little finger.
+@item
+@emph{alza pua}: fast playing with the thumb
+@end itemize
 
 Most figures use arrows in combination with fingering; with abanicos
 and rasgueados, noteheads are printed only for the first chord.
--- old/flat-ties.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/flat-ties.ly 2019-10-08 12:21:04.549121705 +0200
@@ -3,10 +3,10 @@
 \header {
   texidoc = "
 The function takes the default @code{Tie.stencil} as an argument,
-calculating the result relying on the extents of this default. Further
-tweaking is possible by overriding @code{Tie.details.height-limit} or
-with @code{\\shape}. It's also possible to change the custom-definition
-on the fly.
+calculating the result relying on the extents of this default.@*
+Further tweaking is possible by overriding
+@code{Tie.details.height-limit} or with @code{\\shape}. It's also
+possible to change the custom-definition on the fly.
 
 "
   doctitle = "Flat Ties"
@@ -106,3 +106,4 @@
     #(flared-tie '((0 . 0)(0.06 . 0.1) (0.94 . 0.1) (1.0 . 0.0)))
   a4~a
 }
+
--- old/flute-slap-notation.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/flute-slap-notation.ly 2019-10-08 12:21:00.521375424 +0200
@@ -34,3 +34,4 @@
   c4 \slap c d r
   \slap { g4 a } b r
 }
+
--- old/force-a-cancellation-natural-before-accidentals.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/force-a-cancellation-natural-before-accidentals.ly 2019-10-08 12:21:06.265013616 +0200
@@ -14,3 +14,4 @@
   \tweak Accidental.restore-first ##t
   eis
 }
+
--- old/forcing-a-clef-symbol-to-be-displayed.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/forcing-a-clef-symbol-to-be-displayed.ly 2019-10-08 12:21:04.073151688 +0200
@@ -5,8 +5,8 @@
 When a clef sign has already been displayed and it has not been changed
 to a different clef, then repeating the @code{\\clef} command will be
 ignored by LilyPond, since it is not a change of clef.  It is possible
-to force the clef to be redisplayed using the command @code{\\set
-Staff.forceClef = ##t}.
+to force the clef to be redisplayed using the command
+@code{\\set Staff.forceClef = ##t}.
 
 "
   doctitle = "Forcing a clef symbol to be displayed"
--- old/forcing-measure-width-to-adapt-to-metronomemarks-width.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/forcing-measure-width-to-adapt-to-metronomemarks-width.ly 2019-10-08 12:21:04.577119941 +0200
@@ -2,9 +2,10 @@
 
 \header {
   texidoc = "
-By default, metronome marks do not influence horizontal spacing.   This
-can be solved through a simple override, as shown in the second half of
-the example.
+By default, metronome marks do not influence horizontal spacing.
+
+This can be solved through a simple override, as shown in the second
+half of the example.
 
 "
   doctitle = "Forcing measure width to adapt to MetronomeMark's width"
@@ -28,3 +29,4 @@
   \override Score.MetronomeMark.extra-spacing-width = #'(-3 . 0)
   \example
 }
+
--- old/fretboards-alternate-tables.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/fretboards-alternate-tables.ly 2019-10-08 12:21:05.505061487 +0200
@@ -3,16 +3,12 @@
 \header {
   texidoc = "
 Alternate fretboard tables can be created.  These would be used in
-order to have alternate fretboards for a given chord.
-
-In order to use an alternate fretboard table, the table must first be
-created.  Fretboards are then added to the table.
-
-The created fretboard table can be blank, or it can be copied from an
-existing table.
-
-The table to be used in displaying predefined fretboards is selected by
-the property @code{\\predefinedDiagramTable}.
+order to have alternate fretboards for a given chord. In order to use
+an alternate fretboard table, the table must first be
+created.  Fretboards are then added to the table. The created fretboard
+table can be blank, or it can be copied from an existing table. The
+table to be used in displaying predefined fretboards is selected by the
+property @code{\\predefinedDiagramTable}.
 
 "
   doctitle = "Fretboards alternate tables"
--- old/fret-diagrams-explained-and-developed.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/fret-diagrams-explained-and-developed.ly 2019-10-08 12:21:01.445317222 +0200
@@ -340,5 +340,3 @@
   }
 >>
 
-
-
--- old/fretted-headword.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/fretted-headword.ly 2019-10-08 12:21:05.465064007 +0200
@@ -128,3 +128,4 @@
     }
   }
 }
+
--- old/generating-custom-flags.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/generating-custom-flags.ly 2019-10-08 12:21:05.045090463 +0200
@@ -59,3 +59,4 @@
   \revert Flag.stencil
   \snippetexamplenotes
 }
+
--- old/generating-whole-scores-also-book-parts-in-scheme-without-using-the-parser.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/generating-whole-scores-also-book-parts-in-scheme-without-using-the-parser.ly 2019-10-08 12:21:04.249140602 +0200
@@ -5,27 +5,34 @@
 A lilypond score internally is just a Scheme expression, generated by
 the lilypond parser. Using scheme, one can also automatically generate
 a score without an input file. If you have the music expression in
-scheme, a score can be generated by simply calling (scorify-music music
-parser) on your music. This will generate a score object, for which you
-can then set a custom layout block with (let* ((layout
-(ly:output-def-clone $defaultlayout)))
+scheme, a score can be generated by simply calling
+
+@verbatim
+(scorify-music music parser)
+@end verbatim
+
+on your music. This will generate a score object, for which you can
+then set a custom layout block with
+
+@verbatim
+(let* ((layout (ly:output-def-clone $defaultlayout)))
    ; modify the layout here, then assign it:
    (ly:score-add-output-def! score layout)
   )
-
+@end verbatim
 
 Finally, all you have to do it to pass this score to lilypond for
-typesetting. This snippet defines functions @code{(add-score parser
-score)}, @code{(add-text parser text)} and @code{(add-music parser
-music)} to pass a complete score, some markup or some music to lilypond
-for typesetting.
-
-This snippet also works for typesetting scores inside a @code{\\book
-@{...@}} block, as well as top-level scores. To achieve this, each
-score schedulled for typesetting is appended to the list of toplevel
-scores and the toplevel-book-handler (which is a scheme function called
-to process a book once a @code{\\book@{..@}} block is closed) is
-modified to inser all collected scores so far to the book.
+typesetting. This snippet defines functions
+@code{(add-score parser score)}, @code{(add-text parser text)} and
+@code{(add-music parser music)} to pass a complete score, some markup
+or some music to lilypond for typesetting.
+
+This snippet also works for typesetting scores inside a
+@code{\\book @{...@}} block, as well as top-level scores. To achieve
+this, each score schedulled for typesetting is appended to the list of
+toplevel scores and the toplevel-book-handler (which is a scheme
+function called to process a book once a @code{\\book@{..@}} block is
+closed) is modified to inser all collected scores so far to the book.
 
 "
   doctitle = "Generating whole scores (also book parts) in scheme without using the parser"
@@ -112,6 +119,3 @@
 \oneNoteScore
 \oneNoteScore
 
-
-
-
--- old/glissandi-can-skip-grobs.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/glissandi-can-skip-grobs.ly 2019-10-08 12:21:05.801042843 +0200
@@ -12,3 +12,4 @@
   \once \override NoteColumn.glissando-skip = ##t
   f''4 d,
 }
+
--- old/guitar-slides.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/guitar-slides.ly 2019-10-08 12:21:03.465189985 +0200
@@ -41,3 +41,4 @@
     }
   >>
 }
+
--- old/hammer-on-and-pull-off.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/hammer-on-and-pull-off.ly 2019-10-08 12:21:05.813042087 +0200
@@ -13,3 +13,4 @@
     a( g)
   }
 }
+
--- old/hammer-on-and-pull-off-using-chords.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/hammer-on-and-pull-off-using-chords.ly 2019-10-08 12:21:05.829041079 +0200
@@ -16,3 +16,4 @@
     <g' b>8( <a c> <g b>)
   }
 }
+
--- old/hammer-on-and-pull-off-using-voices.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/hammer-on-and-pull-off-using-voices.ly 2019-10-08 12:21:05.841040323 +0200
@@ -15,3 +15,4 @@
     >> \oneVoice
   }
 }
+
--- old/heavily-customized-polymetric-time-signatures.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/heavily-customized-polymetric-time-signatures.ly 2019-10-08 12:21:00.833355771 +0200
@@ -30,3 +30,4 @@
   \melody
   \drum
 }
+
--- old/hiding-the-extender-line-for-text-dynamics.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/hiding-the-extender-line-for-text-dynamics.ly 2019-10-08 12:21:02.493251210 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-Text style dynamic changes (such as cresc. and dim.) are printed with a
-dashed line showing their extent.  This line can be suppressed in the
-following way:
+Text style dynamic changes (such as @emph{cresc.} and @emph{dim.}) are
+printed with a dashed line showing their extent.  This line can be
+suppressed in the following way:
 
 "
   doctitle = "Hiding the extender line for text dynamics"
--- old/horizontally-aligning-custom-dynamics-e.g.-sempre-pp,-piu-f,-subito-p.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/horizontally-aligning-custom-dynamics-e.g.-sempre-pp,-piu-f,-subito-p.ly 2019-10-08 12:21:02.789232565 +0200
@@ -2,45 +2,44 @@
 
 \header {
   texidoc = "
-Some dynamic expressions involve additional text, like @qq{sempre pp}.
-Since dynamics are usually centered under the note, the \\pp would be
-displayed way after the note it applies to.
-
-To correctly align the @qq{sempre pp} horizontally, so that it is
-aligned as if it were only the \\pp, there are several approaches:
-
-* Simply use @code{\\once\\override DynamicText.X-offset = #-9.2}
-before the note with the dynamics to manually shift it to the correct
+Some dynamic expressions involve additional text, like @qq{sempre
+@strong{pp}}. Since dynamics are usually centered under the note, the
+\\pp would be displayed way after the note it applies to.@*
+To correctly align the @qq{sempre @strong{pp}} horizontally, so that it
+is aligned as if it were only the \\pp, there are several approaches:
+
+@itemize
+@item
+Simply use @code{\\once\\override DynamicText.X-offset = #-9.2} before
+the note with the dynamics to manually shift it to the correct
 position. Drawback: This has to be done manually each time you use that
 dynamic markup...
-
-* Add some padding (@code{#:hspace 7.1}) into the definition of your
+@item
+Add some padding (@code{#:hspace 7.1}) into the definition of your
 custom dynamic mark, so that after lilypond center-aligns it, it is
 already correctly aligned. Drawback: The padding really takes up that
 space and does not allow any other markup or dynamics to be shown in
 that position.
-
-* Shift the dynamic script @code{\\once\\override ... .X-offset = ..}.
+@item
+Shift the dynamic script @code{\\once\\override ... .X-offset = ..}.
 Drawback: @code{\\once\\override} is needed for every invocation!
-
-* Set the dimensions of the additional text to 0 (using
+@item
+Set the dimensions of the additional text to 0 (using
 @code{#:with-dimensions '(0 . 0) '(0 . 0)}). Drawback: To LilyPond
 @qq{sempre} has no extent, so it might put other stuff there and create
 collisions (which are not detected by the collision detection!). Also,
 there seems to be some spacing, so it's not exactly the same alignment
 as without the additional text
-
-* Add an explicit shifting directly inside the scheme function for the
+@item
+Add an explicit shifting directly inside the scheme function for the
 dynamic-script.
-
-* Set an explicit alignment inside the dynamic-script. By default, this
+@item
+Set an explicit alignment inside the dynamic-script. By default, this
 won't have any effect, only if one sets X-offset! Drawback: One needs
 to set @code{DynamicText.X-offset}, which will apply to all dynamic
 texts! Also, it is aligned at the right edge of the additional text,
 not at the center of pp.
-
-
-
+@end itemize
 
 "
   doctitle = "Horizontally aligning custom dynamics (e.g. \"sempre pp\", \"piu f\", \"subito p\")"
@@ -175,3 +174,4 @@
     }
   >>
 >>
+
--- old/how-to-print-two-rehearsal-marks-above-and-below-the-same-barline-method-1.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/how-to-print-two-rehearsal-marks-above-and-below-the-same-barline-method-1.ly 2019-10-08 12:21:02.597244659 +0200
@@ -13,8 +13,9 @@
 a rehearsal mark it is possible to centre those above and below a bar
 line.
 
-Adding the appropriate 'break visibility' as shown in snippet 1 will
-allow you to position two marks at the end of a line as well.
+Adding the appropriate 'break visibility' as shown in snippet
+@uref{\%22http://lsr.di.unimi.it/LSR/Item?id=1\%22,1} will allow you to
+position two marks at the end of a line as well.
 
 Note: Method 1 is less complex than Method 2 but does not really allow
 for fine tuning of placement of one of the rehearsal marks without
--- old/how-to-print-two-rehearsal-marks-above-and-below-the-same-barline-method-2.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/how-to-print-two-rehearsal-marks-above-and-below-the-same-barline-method-2.ly 2019-10-08 12:21:04.985094242 +0200
@@ -6,7 +6,6 @@
 below, by creating two voices, adding the Rehearsal Mark engraver to
 each voice - without this no rehearsal mark is printed - and then
 placing each rehearsal mark UP and DOWN in each voice respectively.
-
 This method (as opposed to method 1) is more complex, but allows for
 more flexibility, should it be needed to tweak each rehearsal mark
 independently of the other.
--- old/incipit.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/incipit.ly 2019-10-08 12:21:00.845355015 +0200
@@ -257,3 +257,4 @@
     incipit-width = 4\cm
   }
 }
+
--- old/indicating-cross-staff-chords-with-arpeggio-bracket.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/indicating-cross-staff-chords-with-arpeggio-bracket.ly 2019-10-08 12:21:03.381195276 +0200
@@ -8,8 +8,7 @@
 arpeggios must be set to the bracket shape in the @code{PianoStaff}
 context.
 
-
-(Debussy, Les collines d’Anacapri, m. 65)
+(Debussy, @emph{Les collines d'Anacapri,} m. 65)
 
 "
   doctitle = "Indicating cross-staff chords with arpeggio bracket"
--- old/inserting-a-caesura.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/inserting-a-caesura.ly 2019-10-08 12:21:03.393194520 +0200
@@ -3,8 +3,9 @@
 \header {
   texidoc = "
 Caesura marks can be created by overriding the @code{'text} property of
-the @code{BreathingSign} object. A curved caesura mark is also
-available.
+the @code{BreathingSign} object.
+
+A curved caesura mark is also available.
 
 "
   doctitle = "Inserting a caesura"
--- old/inserting-score-fragments-above-a-staff,-as-markups.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/inserting-score-fragments-above-a-staff,-as-markups.ly 2019-10-08 12:21:01.529311931 +0200
@@ -35,4 +35,3 @@
   g8 a g a
 }
 
-
--- old/jazz-combo-template.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/jazz-combo-template.ly 2019-10-08 12:21:02.449253981 +0200
@@ -269,3 +269,4 @@
   }
   \midi { }
 }
+
--- old/keyboard-headword.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/keyboard-headword.ly 2019-10-08 12:21:05.673050905 +0200
@@ -238,3 +238,4 @@
     }
   >>
 >>
+
--- old/let-tabstaff-print-the-topmost-string-at-bottom.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/let-tabstaff-print-the-topmost-string-at-bottom.ly 2019-10-08 12:21:04.961095753 +0200
@@ -2,10 +2,10 @@
 
 \header {
   texidoc = "
-In tablatures usually the first string is printed topmost. If you want
-to have it at the bottom change the
-@code{stringOneTopmost}-context-property. For a context-wide setting
-this could be done in @code{layout} as well.
+In tablatures usually the first string is printed topmost.@*
+If you want to have it at the bottom change the
+@code{stringOneTopmost}-context-property.@*
+For a context-wide setting this could be done in @code{layout} as well.
 
 "
   doctitle = "Let TabStaff print the topmost string at bottom"
@@ -38,3 +38,4 @@
     \m
   }
 >>
+
--- old/letter-tablature-formatting.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/letter-tablature-formatting.ly 2019-10-08 12:21:02.149272878 +0200
@@ -25,3 +25,4 @@
     \music
   }
 >>
+
--- old/makam-example.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/makam-example.ly 2019-10-08 12:21:03.409193512 +0200
@@ -3,8 +3,10 @@
 \header {
   texidoc = "
 Makam is a type of melody from Turkey using 1/9th-tone microtonal
-alterations. Consult the initialization file @samp{ly/makam.ly} for
-details of pitch names and alterations.
+alterations.
+
+Consult the initialization file @samp{ly/makam.ly} for details of
+pitch names and alterations.
 
 "
   doctitle = "Makam example"
--- old/making-an-object-invisible-with-the-transparent-property.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/making-an-object-invisible-with-the-transparent-property.ly 2019-10-08 12:21:00.189396336 +0200
@@ -7,7 +7,6 @@
 other behavior is retained.  The object still takes up space, it takes
 part in collisions, and slurs, ties and beams can be attached to it.
 
-
 This snippet demonstrates how to connect different voices using ties.
 Normally, ties only connect two notes in the same voice.  By
 introducing a tie in a different voice, and blanking the first up-stem
--- old/making-glissandi-breakable.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/making-glissandi-breakable.ly 2019-10-08 12:21:05.393068542 +0200
@@ -26,3 +26,4 @@
   \break
   a2 a4 r4 |
 }
+
--- old/making-slurs-with-complex-dash-structure.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/making-slurs-with-complex-dash-structure.ly 2019-10-08 12:21:05.713048386 +0200
@@ -5,15 +5,15 @@
 Slurs can be made with complex dash patterns by defining the
 @code{dash-definition} property.  @code{dash-definition} is a list of
 @code{dash-elements}.  A @code{dash-element} is a list of parameters
-defining the dash behavior for a segment of the slur.
-
-The slur is defined in terms of the bezier parameter t which ranges
-from 0 at the left end of the slur to 1 at the right end of the slur.
-@code{dash-element} is a list @code{(start-t stop-t dash-fraction
-dash-period)}.  The region of the slur from @code{start-t} to
-@code{stop-t} will have a fraction @code{dash-fraction} of each
-@code{dash-period} black.  @code{dash-period} is defined in terms of
-staff spaces.  @code{dash-fraction} is set to 1 for a solid slur.
+defining the dash behavior for a segment of the slur. The slur is
+defined in terms of the bezier parameter t which ranges from 0 at the
+left end of the slur to 1 at the right end of the slur.
+@code{dash-element} is a list
+@code{(start-t stop-t dash-fraction dash-period)}.  The region of the
+slur from @code{start-t} to @code{stop-t} will have a fraction
+@code{dash-fraction} of each @code{dash-period}
+black.  @code{dash-period} is defined in terms of staff
+spaces.  @code{dash-fraction} is set to 1 for a solid slur.
 
 "
   doctitle = "Making slurs with complex dash structure"
--- old/manually-break-figured-bass-extenders-for-only-some-numbers.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/manually-break-figured-bass-extenders-for-only-some-numbers.ly 2019-10-08 12:21:03.541185197 +0200
@@ -5,7 +5,7 @@
 Figured bass often uses extenders to indicate continuation of the
 corresponding step. However, in this case lilypond is in greedy-mode
 and uses extenders whenever possible. To break individual extenders,
-one can simply use a modifier \\! to a number, which breaks any
+one can simply use a modifier @code{\\!} to a number, which breaks any
 extender attributed to that number right before the number.
 
 "
--- old/manually-controlling-beam-positions.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/manually-controlling-beam-positions.ly 2019-10-08 12:21:00.477378195 +0200
@@ -5,9 +5,6 @@
 Beam positions may be controlled manually, by overriding the
 @code{positions} setting of the @code{Beam} grob.
 
-
-
-
 "
   doctitle = "Manually controlling beam positions"
 }
--- old/modifying-default-values-for-articulation-shorthand-notation.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/modifying-default-values-for-articulation-shorthand-notation.ly 2019-10-08 12:21:03.225205102 +0200
@@ -7,9 +7,9 @@
 @code{dashBar}, @code{dashLarger}, @code{dashDot}, and
 @code{dashUnderscore} are assigned default values.  The default values
 for the shorthands can be modified. For example, to associate the
-@code{-+} (@code{dashPlus}) shorthand with the trill symbol instead of
-the default + symbol, assign the value @code{trill} to the variable
-@code{dashPlus}:
+@code{-+} (@code{dashPlus}) shorthand with the @emph{trill} symbol
+instead of the default @emph{+} symbol, assign the value @code{trill}
+to the variable @code{dashPlus}:
 
 "
   doctitle = "Modifying default values for articulation shorthand notation"
--- old/modifying-the-ottava-spanner-slope.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/modifying-the-ottava-spanner-slope.ly 2019-10-08 12:21:04.493125232 +0200
@@ -26,3 +26,4 @@
   c1
   c'''1
 }
+
--- old/multi-measure-rest-markup.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/multi-measure-rest-markup.ly 2019-10-08 12:21:04.169145641 +0200
@@ -6,12 +6,10 @@
 below it.  Long markups attached to multi-measure rests do not cause
 the measure to expand.  To expand a multi-measure rest to fit the
 markup, use an empty chord with an attached markup before the
-multi-measure rest.
-
-Text attached to a spacer rest in this way is left-aligned to the
-position where the note would be placed in the measure, but if the
-measure length is determined by the length of the text, the text will
-appear to be centered.
+multi-measure rest. Text attached to a spacer rest in this way is
+left-aligned to the position where the note would be placed in the
+measure, but if the measure length is determined by the length of the
+text, the text will appear to be centered.
 
 "
   doctitle = "Multi-measure rest markup"
--- old/nesting-staves.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/nesting-staves.ly 2019-10-08 12:21:02.841229290 +0200
@@ -3,13 +3,13 @@
 \header {
   texidoc = "
 The property @code{systemStartDelimiterHierarchy} can be used to make
-more complex nested staff groups. The command @code{\\set
-StaffGroup.systemStartDelimiterHierarchy} takes an alphabetical list of
-the number of staves produced. Before each staff a system start
-delimiter can be given. It has to be enclosed in brackets and takes as
-much staves as the brackets enclose. Elements in the list can be
-omitted, but the first bracket takes always the complete number of
-staves. The possibilities are @code{SystemStartBar},
+more complex nested staff groups. The command
+@code{\\set StaffGroup.systemStartDelimiterHierarchy} takes an
+alphabetical list of the number of staves produced. Before each staff a
+system start delimiter can be given. It has to be enclosed in brackets
+and takes as much staves as the brackets enclose. Elements in the list
+can be omitted, but the first bracket takes always the complete number
+of staves. The possibilities are @code{SystemStartBar},
 @code{SystemStartBracket}, @code{SystemStartBrace}, and
 @code{SystemStartSquare}.
 
--- old/non-traditional-key-signatures.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/non-traditional-key-signatures.ly 2019-10-08 12:21:01.501313695 +0200
@@ -8,22 +8,21 @@
 To create non-standard key signatures, set this property directly. The
 format of this command is a list:
 
-@code{ \\set Staff.keySignature = #`(((octave . step) . alter) ((octave
-. step) . alter) ...) } where, for each element in the list,
-@code{octave} specifies the octave (0 being the octave from middle C to
-the B above), @code{step} specifies the note within the octave (0 means
-C and 6 means B), and @code{alter} is @code{,SHARP ,FLAT ,DOUBLE-SHARP}
-etc. (Note the leading comma.)
+@code{ \\set Staff.keySignature = #`(((octave . step) . alter) ((octave . step) . alter) ...)}
+
+where, for each element in the list, @code{octave} specifies the octave
+(0 being the octave from middle C to the B above), @code{step}
+specifies the note within the octave (0 means C and 6 means B), and
+@code{alter} is @code{,SHARP ,FLAT ,DOUBLE-SHARP} etc. (Note the
+leading comma.)
 
 Alternatively, for each item in the list, using the more concise format
 @code{(step . alter)} specifies that the same alteration should hold in
 all octaves.
 
-
 For microtonal scales where a @qq{sharp} is not 100 cents, @code{alter}
 refers to the alteration as a proportion of a 200-cent whole tone.
 
-
 Here is an example of a possible key signature for generating a
 whole-tone scale:
 
--- old/numbering-groups-of-measures.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/numbering-groups-of-measures.ly 2019-10-08 12:21:04.521123468 +0200
@@ -7,18 +7,15 @@
 measures.  Any stretch of measures may be numbered, whether consisting
 of repetitions or not.
 
-
 The engraver must be added to the appropriate context.  Here, a
 @code{Staff} context is used; another possibility is a @code{Dynamics}
 context.
 
-
 The counter is begun with @code{\\startMeasureCount} and ended with
 @code{\\stopMeasureCount}.  Numbering will start by default with
 @code{1}, but this behavior may be modified by overriding the
 @code{count-from} property.
 
-
 When a measure extends across a line break, the number will appear
 twice, the second time in parentheses.
 
@@ -54,3 +51,4 @@
   }
   \stopMeasureCount
 }
+
--- old/numbering-single-measure-rests.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/numbering-single-measure-rests.ly 2019-10-08 12:21:06.317010340 +0200
@@ -16,3 +16,4 @@
   \set restNumberThreshold = 10
   R1 R1*10 R1*11
 }
+
--- old/numbers-as-easy-note-heads.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/numbers-as-easy-note-heads.ly 2019-10-08 12:21:05.741046622 +0200
@@ -3,8 +3,8 @@
 \header {
   texidoc = "
 Easy notation note heads use the @code{note-names} property of the
-@code{NoteHead} object to determine what appears inside the note head.
-By overriding this property, it is possible to print numbers
+@code{NoteHead} object to determine what appears inside the note
+head.  By overriding this property, it is possible to print numbers
 representing the scale-degree.
 
 A simple engraver can be created to do this for every note head object
@@ -51,3 +51,4 @@
   d,4 e f g
   a4 b c d
 }
+
--- old/obtaining-2.12-lyrics-spacing-in-newer-versions.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/obtaining-2.12-lyrics-spacing-in-newer-versions.ly 2019-10-08 12:21:05.685050149 +0200
@@ -8,7 +8,6 @@
 It is possible to set properties for @code{Lyric} and @code{Staff}
 contexts to get the spacing engine to behave as it did in version 2.12.
 
-
 "
   doctitle = "Obtaining 2.12 lyrics spacing in newer versions"
 }
--- old/of-the-ubiquity-of-markup-objects.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/of-the-ubiquity-of-markup-objects.ly 2019-10-08 12:21:06.349008325 +0200
@@ -8,20 +8,21 @@
 
 As such, markup blocks may be used:
 
-* in any TextScript object (attached to notes with @code{-}, @code{^}
-or @code{_}),
-
-* any RehearsalMark introduced with the @code{\\mark} keyword, or other
+@itemize
+@item
+in any TextScript object (attached to notes with @code{-}, @code{^} or
+@code{_}),
+@item
+any RehearsalMark introduced with the @code{\\mark} keyword, or other
 similar objects such as MetronomeMark introduced with @code{\\tempo},
-
-* as standalone markup blocks, entered at the top level outside of any
+@item
+as standalone markup blocks, entered at the top level outside of any
 @code{\\score} block,
-
-* in any definition inside the @code{\\header} block (e.g. title,
+@item
+in any definition inside the @code{\\header} block (e.g. title,
 subtitle, composer) or in some variables defined inside the
 @code{\\paper} block such as @code{evenHeaderMarkup} for page numbers.
-
-
+@end itemize
 
 @code{\\markup} may additionally be used for lyrics, in chord names,
 and as dynamics.  In fact, it is possible to use @code{\\markup} to
@@ -66,3 +67,4 @@
     \new Dynamics { s1\dyn }
   >>
 }
+
--- old/orchestra,-choir-and-piano-template.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/orchestra,-choir-and-piano-template.ly 2019-10-08 12:21:05.249077613 +0200
@@ -139,3 +139,4 @@
   >>
   \layout { }
 }
+
--- old/outputting-the-version-number.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/outputting-the-version-number.ly 2019-10-08 12:21:00.249392557 +0200
@@ -2,11 +2,10 @@
 
 \header {
   texidoc = "
-By putting the output of
-    @code{lilypond-version} into a lyric, it is possible to print the
-    version number of LilyPond in a score, or in a document generated
-    with @code{lilypond-book}.  Another possibility is to append the
-    version number to the doc-string, in this manner:
+By putting the output of @code{lilypond-version} into a lyric, it is
+possible to print the version number of LilyPond in a score, or in a
+document generated with @code{lilypond-book}.  Another possibility is
+to append the version number to the doc-string, in this manner:
 
 "
   doctitle = "Outputting the version number"
--- old/overriding-articulations-of-destinct-type.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/overriding-articulations-of-destinct-type.ly 2019-10-08 12:21:06.209017143 +0200
@@ -2,11 +2,11 @@
 
 \header {
   texidoc = "
-Sometimes you may want to affect a single articulation-type. Although
-it is always possible to use @code{\\tweak}, it might become tedious to
-do so for every single sign of a whole score. The following shows how
-to tweak articulations with a list of custom-settings. One use-case
-might be to create a style-sheet.
+Sometimes you may want to affect a single articulation-type.@*
+Although it is always possible to use @code{\\tweak}, it might become
+tedious to do so for every single sign of a whole score.@*
+The following shows how to tweak articulations with a list of
+custom-settings. One use-case might be to create a style-sheet.
 
 With 2.16.2 it is possible to put the proposed function,
 @code{\\customScripts}, into a @code{\\layout}-block.
--- old/partcombine-and-autobeamoff.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/partcombine-and-autobeamoff.ly 2019-10-08 12:21:05.069088951 +0200
@@ -7,30 +7,23 @@
 
 It may be preferable to use
 
-
 @code{\\set Staff.autoBeaming = ##f}
 
-
 instead, to ensure that autobeaming will be turned off for the entire
 staff.
 
-
 @code{\\partcombine} apparently works with 3 voices -- stem up single,
 stem down single, stem up combined.
 
-
 An @code{\\autoBeamOff} call in the first argument to partcombine will
 apply to the voice that is active at the time the call is processed,
 either stem up single or stem up combined. An @code{\\autoBeamOff} call
-in the second argument will apply to the voice that is stem down single.
-
+in the second argument will apply to the voice that is stem down
+single.
 
 In order to use @code{\\autoBeamOff} to stop all autobeaming when used
-with @code{\\partcombine}, it will be necessary to use three calls to
-@code{\\autoBeamOff}.
-
-
-
+with @code{\\partcombine}, it will be necessary to use @emph{three}
+calls to @code{\\autoBeamOff}.
 
 "
   doctitle = "Partcombine and autoBeamOff"
--- old/percussion-example.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/percussion-example.ly 2019-10-08 12:21:06.309010845 +0200
@@ -63,3 +63,4 @@
   \drumsB
   >>
 }
+
--- old/pitches-headword.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/pitches-headword.ly 2019-10-08 12:21:05.769044858 +0200
@@ -132,3 +132,4 @@
     r4 r2
   }
 >>
+
--- old/placement-of-right-hand-fingerings.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/placement-of-right-hand-fingerings.ly 2019-10-08 12:21:03.681176379 +0200
@@ -4,7 +4,8 @@
   texidoc = "
 It is possible to exercise greater control over the placement of
 right-hand fingerings by setting a specific property, as demonstrated
-in the following example. Note: you must use a chord construct
+in the following example. Note: you must use a chord construct <>, even
+if it is only a single note.
 
 "
   doctitle = "Placement of right-hand fingerings"
--- old/positioning-multi-measure-rests.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/positioning-multi-measure-rests.ly 2019-10-08 12:21:02.349260281 +0200
@@ -6,8 +6,9 @@
 staff position of a multi-measure rest symbol of either form by
 attaching it to a note.  However, in polyphonic music multi-measure
 rests in odd-numbered and even-numbered voices are vertically
-separated. The positioning of multi-measure rests can be controlled as
-follows:
+separated.
+
+The positioning of multi-measure rests can be controlled as follows:
 
 "
   doctitle = "Positioning multi-measure rests"
@@ -54,3 +55,4 @@
     { R1*3 }
   >>
 }
+
--- old/positioning-segno-and-coda-with-line-break.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/positioning-segno-and-coda-with-line-break.ly 2019-10-08 12:21:00.621369125 +0200
@@ -2,8 +2,8 @@
 
 \header {
   texidoc = "
-If you want to place an exiting segno sign and add text like @qq{D.S.
-al Coda} next to it where usually the staff lines are you can use this
+If you want to place an exiting segno sign and add text like @qq{D.S. al
+Coda} next to it where usually the staff lines are you can use this
 snippet. The coda will resume in a new line. There is a variation
 documented in this snippet, where the coda will remain on the same
 line.
@@ -121,3 +121,4 @@
     \bar"|."
   }
 }
+
--- old/preventing-extra-naturals-from-being-automatically-added.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/preventing-extra-naturals-from-being-automatically-added.ly 2019-10-08 12:21:02.221268343 +0200
@@ -8,8 +8,6 @@
 practice, set the  @code{extraNatural} property to @code{f} in the
 @code{Staff} context.
 
-
-
 "
   doctitle = "Preventing extra naturals from being automatically added"
 }
--- old/printing-hairpins-in-various-styles.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/printing-hairpins-in-various-styles.ly 2019-10-08 12:21:06.073025710 +0200
@@ -25,3 +25,4 @@
   a4\p\> a a a\ff
   a4\sfz\> a a a\!
 }
+
--- old/printing-metronome-and-rehearsal-marks-below-the-staff.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/printing-metronome-and-rehearsal-marks-below-the-staff.ly 2019-10-08 12:21:02.857228282 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-By default, metronome and rehearsal marks are printed above the staff.
-To place them below the staff simply set the @code{direction} property
-of @code{MetronomeMark} or @code{RehearsalMark} appropriately.
+By default, metronome and rehearsal marks are printed above the
+staff.  To place them below the staff simply set the @code{direction}
+property of @code{MetronomeMark} or @code{RehearsalMark} appropriately.
 
 "
   doctitle = "Printing metronome and rehearsal marks below the staff"
--- old/printing-music-with-different-time-signatures.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/printing-music-with-different-time-signatures.ly 2019-10-08 12:21:01.829293034 +0200
@@ -3,19 +3,18 @@
 \header {
   texidoc = "
 In the following snippet, two parts have a completely different time
-signature, yet remain synchronized. The bar lines can no longer be
-printed at the @code{Score} level; to allow independent bar lines in
-each part, the @code{Default_barline_engraver} and
-@code{Timing_translator} are moved from the @code{Score} context to the
-@code{Staff} context.
+signature, yet remain synchronized.
+
+The bar lines can no longer be printed at the @code{Score} level; to
+allow independent bar lines in each part, the
+@code{Default_barline_engraver} and @code{Timing_translator} are moved
+from the @code{Score} context to the @code{Staff} context.
 
 If bar numbers are required, the @code{Bar_number_engraver} should also
 be moved, since it relies on properties set by the
 @code{Timing_translator}; a @code{\\with} block can be used to add bar
 numbers to the relevant staff.
 
-
-
 "
   doctitle = "Printing music with different time signatures"
 }
--- old/putting-lyrics-inside-the-staff.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/putting-lyrics-inside-the-staff.ly 2019-10-08 12:21:01.125337379 +0200
@@ -3,9 +3,10 @@
 \header {
   texidoc = "
 Lyrics can be moved vertically to place them inside the staff.  The
-lyrics are moved with @code{\\override LyricText.extra-offset = #'(0 .
-dy)} and there are similar commands to move the extenders and hyphens.
-The offset needed is established with trial and error.
+lyrics are moved with
+@code{\\override LyricText.extra-offset = #'(0 . dy)} and there are
+similar commands to move the extenders and hyphens.  The offset needed
+is established with trial and error.
 
 "
   doctitle = "Putting lyrics inside the staff"
--- old/quoting-another-voice.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/quoting-another-voice.ly 2019-10-08 12:21:02.717237101 +0200
@@ -3,15 +3,16 @@
 \header {
   texidoc = "
 The @code{quotedEventTypes} property determines the music event types
-which should be quoted.  The default value is @code{(note-event
-rest-event tie-event beam-event tuplet-span-event)}, which means that
-only the notes, rests, ties, beams and tuplets of the quoted voice will
-appear in the @code{\\quoteDuring} expression. In the following
-example, a 16th rest is not quoted since @code{rest-event} is not in
-@code{quotedEventTypes}.
+which should be quoted.  The default value is
+@code{(note-event rest-event tie-event beam-event tuplet-span-event)},
+which means that only the notes, rests, ties, beams and tuplets of the
+quoted voice will appear in the @code{\\quoteDuring} expression.
 
-For a list of event types, consult the @qq{Music classes} section of
-the Internals Reference.
+In the following example, a 16th rest is not quoted since
+@code{rest-event} is not in @code{quotedEventTypes}.
+
+For a list of event types, consult the @qq{Music classes} section of the
+Internals Reference.
 
 "
   doctitle = "Quoting another voice"
@@ -50,5 +51,3 @@
   >>
 >>
 
-
-
--- old/quoting-another-voice-with-transposition.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/quoting-another-voice-with-transposition.ly 2019-10-08 12:21:02.733236092 +0200
@@ -38,3 +38,4 @@
   \quoteTest
   \transpose c' d' << \quoteTest s4_"up a tone" >>
 }
+
--- old/recorder-fingering-chart.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/recorder-fingering-chart.ly 2019-10-08 12:21:04.645115658 +0200
@@ -53,3 +53,4 @@
     f''1*1/4^\markup {2)}\stopGroup
   }
 }
+
--- old/removing-brace-on-first-line-of-piano-score.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/removing-brace-on-first-line-of-piano-score.ly 2019-10-08 12:21:06.221016387 +0200
@@ -3,8 +3,10 @@
 \header {
   texidoc = "
 This snippet removes the first brace from a @code{PianoStaff} or a
-@code{GrandStaff}. It may be useful when cutting and pasting the
-engraved image into existing music.
+@code{GrandStaff}.
+
+It may be useful when cutting and pasting the engraved image into
+existing music.
 
 It uses @code{\\alterBroken}.
 
--- old/rhythmic-slashes.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/rhythmic-slashes.ly 2019-10-08 12:21:02.189270358 +0200
@@ -6,13 +6,16 @@
 instead only @qq{rhythmic patterns} and chords above the measures are
 notated giving the structure of a song. Such a feature is for example
 useful while creating/transcribing the structure of a song and also
-when sharing lead sheets with guitarists or jazz musicians. The
-standard support for this using @code{\\repeat percent} is unsuitable
-here since the first beat has to be an ordinary note or rest. This
-example shows two solutions to this problem, by redefining ordinary
-rests to be printed as slashes. (If the duration of each beat is not a
-quarter note, replace the @code{r4} in the definitions with a rest of
-the appropriate duration).
+when sharing lead sheets with guitarists or jazz musicians.
+
+The standard support for this using @code{\\repeat percent} is
+unsuitable here since the first beat has to be an ordinary note or
+rest.
+
+This example shows two solutions to this problem, by redefining
+ordinary rests to be printed as slashes. (If the duration of each beat
+is not a quarter note, replace the @code{r4} in the definitions with a
+rest of the appropriate duration).
 
 "
   doctitle = "Rhythmic slashes"
--- old/rhythms-headword.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/rhythms-headword.ly 2019-10-08 12:21:05.857039316 +0200
@@ -210,3 +210,4 @@
       c'32
    }
 >>
+
--- old/satb-choir-template---four-staves.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/satb-choir-template---four-staves.ly 2019-10-08 12:21:05.277075849 +0200
@@ -64,6 +64,3 @@
   >>
 }
 
-
-
-
--- old/score-for-diatonic-accordion.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/score-for-diatonic-accordion.ly 2019-10-08 12:21:01.909287996 +0200
@@ -15,17 +15,14 @@
 pitch of the notes; the keys on the melody-side of the accordion are
 placed in three columns and about 12 rows
 
-
 In the tabulator staff notation the outermost column is described with
 notes between lines, the innermost column is described with notes
 between lines and a cross as accidental, and the middle column is
 described with notes on a line, whereby the row in the middle is
 represented on the middle line in the staff.
 
-
 Some words to transpose piano notes to the diatonic accordion:
 
-
 1. Every diatonic accordion is built for some keys only (for example,
 for the keys of C major and F major), so it is important to transpose a
 piano melody to match one of these keys. Transpose the source code, not
@@ -33,14 +30,12 @@
 once more to the tabulator staff. This can be done with the command
 @code{displayLilyMusic}.
 
-
 2. You have to alternate the push- and pull-direction of the accordion
 regularly. If the player has a too long part to pull the accordion gets
 broken. On the other hand, some harmonies are only available in one
 direction. Considering this, decide which parts of the melody are the
 push-parts and which the pull-parts.
 
-
 3. For each pull- or push-part translate the piano notes to the
 according tabulature representation.
 
@@ -239,3 +234,4 @@
       \lyricsto VoiceBassRhytm \LyricBassRhythmI
   >>
 }
+
--- old/screech-and-boink.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/screech-and-boink.ly 2019-10-08 12:21:05.873038307 +0200
@@ -71,4 +71,3 @@
   }
 }
 
-
--- old/separating-key-cancellations-from-key-signature-changes.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/separating-key-cancellations-from-key-signature-changes.ly 2019-10-08 12:21:02.533248690 +0200
@@ -7,7 +7,6 @@
 changed by overriding the @code{'break-align-orders} property of the
 @code{BreakAlignment} grob.
 
-
 The value of @code{'break-align-orders} is a vector of length 3, with
 quoted lists of breakable items as elements.  This example only
 modifies the second list, moving @code{key-cancellation} before
--- old/several-procedures-to-print-different-bar-numbering-rules.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/several-procedures-to-print-different-bar-numbering-rules.ly 2019-10-08 12:21:06.181018907 +0200
@@ -2,23 +2,23 @@
 
 \header {
   texidoc = "
-sometimes you would like to emphasize certain bar numbers... here are
-some procedures to do so:
-
-
-* @code{#all-bar-numbers-visible}
-
-* @code{#(every-nth-bar-number-visible n)}
-
-* @code{#(modulo-bar-number-visible n m)} (needs version 2.16 or
-higher:)
-
-
-* @code{#first-bar-number-invisible-save-broken-bars}
-
-* @code{#first-bar-number-invisible-and-no-parenthesized-bar-numbers}
+sometimes you would like to emphasize certain bar numbers...
 
+here are some procedures to do so:
 
+@itemize
+@item
+@code{#all-bar-numbers-visible}
+@item
+@code{#(every-nth-bar-number-visible n)}
+@item
+@code{#(modulo-bar-number-visible n m)}
+(needs version 2.16 or higher:)
+@item
+@code{#first-bar-number-invisible-save-broken-bars}
+@item
+@code{#first-bar-number-invisible-and-no-parenthesized-bar-numbers}
+@end itemize
 
 "
   doctitle = "several procedures to print different bar numbering rules"
--- old/showing-the-same-articulation-above-and-below-a-note-or-chord.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/showing-the-same-articulation-above-and-below-a-note-or-chord.ly 2019-10-08 12:21:02.557247178 +0200
@@ -4,17 +4,18 @@
   texidoc = "
 By default, LilyPond does not allow the same articulation (e.g., an
 accent, a fermata, a flageolet, etc.) to be displayed above and below a
-note. For example, c4_\\fermata^\\fermata will only show a fermata
-below. The fermata above will simply be ignored. However, one can stick
-scripts (just like fingerings) inside a chord, which means it is
-possible to have as many articulations as desired. This approach has
-the advantage that it ignores the stem and positions the articulation
-relative to the note head. This can be seen in the case of the
-flageolets in the snippet. To mimic the behaviour of scripts outside a
-chord, 'add-stem-support would be required. So, the solution is to
-write the note as a chord and add the articulations inside the <...>.
-The direction will always be above, but one can tweak this via a
-\\tweak: @code{<c-\\tweak direction #DOWN-\\fermata^\\fermata>}
+note. For example, @code{c4_\\fermata^\\fermata} will only show a
+fermata below. The fermata above will simply be ignored.@*
+However, one can stick scripts (just like fingerings) inside a chord,
+which means it is possible to have as many articulations as desired.
+This approach has the advantage that it ignores the stem and positions
+the articulation relative to the note head. This can be seen in the
+case of the flageolets in the snippet. To mimic the behaviour of
+scripts outside a chord, 'add-stem-support would be required.@*
+So, the solution is to write the note as a chord and add the
+articulations inside the @code{<...>}. The direction will always be
+above, but one can tweak this via a \\tweak:
+@code{<c-\\tweak direction #DOWN-\\fermata^\\fermata>}
 
 "
   doctitle = "Showing the same articulation above and below a note or chord"
--- old/single-staff-template-with-notes-and-chords.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/single-staff-template-with-notes-and-chords.ly 2019-10-08 12:21:02.293263808 +0200
@@ -4,7 +4,6 @@
   texidoc = "
 Want to prepare a lead sheet with a melody and chords? Look no further!
 
-
 "
   doctitle = "Single staff template with notes and chords"
 }
--- old/skips-in-lyric-mode-2.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/skips-in-lyric-mode-2.ly 2019-10-08 12:21:00.801357787 +0200
@@ -4,7 +4,9 @@
   texidoc = "
 Although @code{s} skips cannot be used in @code{\\lyricmode} (it is
 taken to be a literal @qq{s}, not a space), double quotes (@code{\"\"})
-or underscores (@code{_}) are available.So for example:
+or underscores (@code{_}) are available.
+
+So for example:
 
 "
   doctitle = "Skips in lyric mode (2)"
--- old/stemlets.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/stemlets.ly 2019-10-08 12:21:03.777170332 +0200
@@ -2,18 +2,16 @@
 
 \header {
   texidoc = "
-In some notational conventions beams are allowed to extend over rests.
-Depending on preference, these beams may drop 'stemlets' to help the
-eye appreciate the rhythm better, and in some modern music the rest
-itself is omitted and only the stemlet remains.
-
+In some notational conventions beams are allowed to extend over
+rests.  Depending on preference, these beams may drop 'stemlets' to
+help the eye appreciate the rhythm better, and in some modern music the
+rest itself is omitted and only the stemlet remains.
 
 This snippet shows a progression from traditional notation, to beams
 over the rest, to stemlets over the rest, to stemlets alone.  Stemlets
 are generated by overriding the @code{'stemlet-length} property of
-@code{Stem}, while rests are hidden by setting @code{'transparent =
-##t}.
-
+@code{Stem}, while rests are hidden by setting
+@code{'transparent = ##t}.
 
 Some @code{\\markup} elements are included in the source to highlight
 the different notations.
--- old/strict-beat-beaming.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/strict-beat-beaming.ly 2019-10-08 12:21:01.925286987 +0200
@@ -15,3 +15,4 @@
   \set strictBeatBeaming = ##t
   a8. a16 a a
 }
+
--- old/string-quartet-template-with-separate-parts.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/string-quartet-template-with-separate-parts.ly 2019-10-08 12:21:02.389257761 +0200
@@ -2,18 +2,17 @@
 
 \header {
   texidoc = "
-The @qq{String quartet template} snippet produces a nice string
-quartet, but what if you needed to print parts? This new template
-demonstrates how to use the @code{\\tag} feature to easily split a
-piece into individual parts.
+The @qq{String quartet template} snippet produces a nice string quartet,
+but what if you needed to print parts? This new template demonstrates
+how to use the @code{\\tag} feature to easily split a piece into
+individual parts.
 
 You need to split this template into separate files; the filenames are
 contained in comments at the beginning of each file. @code{piece.ly}
-contains all the music definitions. The other files – @code{score.ly},
-@code{vn1.ly}, @code{vn2.ly}, @code{vla.ly}, and @code{vlc.ly} –
+contains all the music definitions. The other files -- @code{score.ly},
+@code{vn1.ly}, @code{vn2.ly}, @code{vla.ly}, and @code{vlc.ly} --
 produce the appropriate part.
 
-
 Do not forget to remove specified comments when using separate files!
 
 "
@@ -121,6 +120,3 @@
 
 %}
 
-
-
-
--- old/suppressing-warnings-for-clashing-note-columns.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/suppressing-warnings-for-clashing-note-columns.ly 2019-10-08 12:21:03.133210897 +0200
@@ -23,3 +23,4 @@
     \new Voice { c2 \stemDown c, }
   >>
 }
+
--- old/table-of-contents.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/table-of-contents.ly 2019-10-08 12:21:04.281138586 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-A table of contents is included using @code{\\markuplist
-\\table-of-contents}.  The TOC items are added with the
-@code{\\tocItem} command.
+A table of contents is included using
+@code{\\markuplist \\table-of-contents}.  The TOC items are added with
+the @code{\\tocItem} command.
 
 "
   doctitle = "Table of contents"
--- old/tam-tam-example.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/tam-tam-example.ly 2019-10-08 12:21:06.297011601 +0200
@@ -18,3 +18,4 @@
 
   tt 1 \pp \laissezVibrer
 }
+
--- old/time-signature-printing-only-the-numerator-as-a-number-instead-of-the-fraction.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/time-signature-printing-only-the-numerator-as-a-number-instead-of-the-fraction.ly 2019-10-08 12:21:03.625179906 +0200
@@ -5,10 +5,10 @@
 Sometimes, a time signature should not print the whole fraction (e.g.
 7/4), but only the numerator (7 in this case). This can be easily done
 by using @code{\\override Staff.TimeSignature.style = #'single-digit}
-to change the style permanently. By using @code{\\revert
-Staff.TimeSignature.style}, this setting can be reversed. To apply the
-single-digit style to only one time signature, use the
-@code{\\override} command and prefix it with a @code{\\once}.
+to change the style permanently. By using
+@code{\\revert Staff.TimeSignature.style}, this setting can be
+reversed. To apply the single-digit style to only one time signature,
+use the @code{\\override} command and prefix it with a @code{\\once}.
 
 "
   doctitle = "Time signature printing only the numerator as a number (instead of the fraction)"
--- old/transposing-pitches-with-minimum-accidentals-smart-transpose.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/transposing-pitches-with-minimum-accidentals-smart-transpose.ly 2019-10-08 12:21:01.361322513 +0200
@@ -8,19 +8,14 @@
 
 Double accidentals should be removed
 
-
 B sharp -> C
 
-
 E sharp -> F
 
-
 C flat -> B
 
-
 F flat -> E
 
-
 In this manner, the most natural enharmonic notes are chosen.
 
 "
--- old/tweaking-clef-properties.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/tweaking-clef-properties.ly 2019-10-08 12:21:00.717363078 +0200
@@ -5,9 +5,9 @@
 Changing the Clef glyph, its position, or the ottavation does not
 change the position of subsequent notes on the staff.  To get key
 signatures on their correct staff lines @code{middleCClefPosition} must
-also be specified, with positive or negative values moving @code{middle
-C} up or down respectively, relative to the staff's center line.
-
+also be specified, with positive or negative values moving
+@code{middle C} up or down respectively, relative to the staff's center
+line.
 
 For example, @code{\\clef \"treble_8\"} is equivalent to setting the
 @code{clefGlyph}, @code{clefPosition} (the vertical position of the
@@ -16,7 +16,6 @@
 (except @code{middleCPosition}) are changed a new clef symbol is
 printed.
 
-
 The following examples show the possibilities when setting these
 properties manually. On the first line, the manual changes preserve the
 standard relative positioning of clefs and notes, whereas on the second
--- old/tweaking-grace-layout-within-music.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/tweaking-grace-layout-within-music.ly 2019-10-08 12:21:01.373321757 +0200
@@ -4,9 +4,11 @@
   texidoc = "
 The layout of grace expressions can be changed throughout the music
 using the functions @code{add-grace-property} and
-@code{remove-grace-property}. The following example undefines the
-@code{Stem} direction for this grace, so that stems do not always point
-up, and changes the default note heads to crosses.
+@code{remove-grace-property}.
+
+The following example undefines the @code{Stem} direction for this
+grace, so that stems do not always point up, and changes the default
+note heads to crosses.
 
 "
   doctitle = "Tweaking grace layout within music"
--- old/two--partcombine-pairs-on-one-staff.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/two--partcombine-pairs-on-one-staff.ly 2019-10-08 12:21:04.601118429 +0200
@@ -4,16 +4,17 @@
   texidoc = "
 The @code{\\partcombine} function takes two music expressions each
 containing a part, and distributes them among four @code{Voice}s named
-@qq{two} @qq{one} @qq{solo} and @qq{chords} depending on when and how
-the parts merged into a common voice.   The voices output from
+@qq{two} @qq{one} @qq{solo} and @qq{chords} depending on when and how the
+parts merged into a common voice.   The voices output from
 @code{\\partcombine} can have their layout properties adjusted in the
 usual way.  Here we define extensions of @code{\\partcombine} to make
 it easier to put four voices on a staff.
 
-soprano = @{ d'4 | cis'  b  e'  d'8 cis' | cis'2 b @} alto = @{ fis4 |
-e8 fis gis ais b4 b | b ais fis2 @} tenor = @{ a8 b | cis' dis' e'4 b8
-cis' d'4 | gis cis' dis'2 @} bass = @{ fis8 gis | a4 gis g fis | eis
-fis b,2 @}
+@verbatim
+soprano = { d'4 | cis'  b  e'  d'8 cis' | cis'2 b }
+alto = { fis4 | e8 fis gis ais b4 b | b ais fis2 }
+tenor = { a8 b | cis' dis' e'4 b8 cis' d'4 | gis cis' dis'2 }
+bass = { fis8 gis | a4 gis g fis | eis fis b,2 }
 
 \\new Staff <<
   \\key b\\minor
@@ -21,7 +22,9 @@
   \\partial 4
   \\transpose b b'  
   \\partcombineUp \\soprano \\alto
-  \\partcombineDown \\tenor \\bass >>
+  \\partcombineDown \\tenor \\bass
+>>
+@end verbatim
 
 "
   doctitle = "Two \\partcombine pairs on one staff"
--- old/using-an-extra-voice-for-breaks.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/using-an-extra-voice-for-breaks.ly 2019-10-08 12:21:01.941285980 +0200
@@ -5,11 +5,9 @@
 Often it is easier to manage line and page-breaking information by
 keeping it separate from the music by introducing an extra voice
 containing only skips along with the @code{\\break}, @code{pageBreak}
-and other layout information.
-
-This pattern becomes especially helpful when overriding
-@code{line-break-system-details} and the other useful but long
-properties of @code{NonMusicalPaperColumnGrob}.
+and other layout information. This pattern becomes especially helpful
+when overriding @code{line-break-system-details} and the other useful
+but long properties of @code{NonMusicalPaperColumnGrob}.
 
 "
   doctitle = "Using an extra voice for breaks"
@@ -32,3 +30,4 @@
     }
   >>
 }
+
--- old/using-a-tick-as-the-breath-mark-symbol.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/using-a-tick-as-the-breath-mark-symbol.ly 2019-10-08 12:21:01.953285224 +0200
@@ -2,11 +2,11 @@
 
 \header {
   texidoc = "
-Vocal and wind music frequently uses a tick mark as a breathing sign.
-This indicates a breath that subtracts a little time from the previous
-note rather than causing a short pause, which is indicated by the comma
-breath mark.  The mark can be moved up a little to take it away from
-the stave.
+Vocal and wind music frequently uses a tick mark as a breathing
+sign.  This indicates a breath that subtracts a little time from the
+previous note rather than causing a short pause, which is indicated by
+the comma breath mark.  The mark can be moved up a little to take it
+away from the stave.
 
 "
   doctitle = "Using a tick as the breath mark symbol"
@@ -22,3 +22,4 @@
   \breathe
   d2
 }
+
--- old/using-double-slurs-for-legato-chords.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/using-double-slurs-for-legato-chords.ly 2019-10-08 12:21:02.477252218 +0200
@@ -2,8 +2,8 @@
 
 \header {
   texidoc = "
-Some composers write two slurs when they want legato chords.  This can
-be achieved by setting @code{doubleSlurs}.
+Some composers write two @emph{slurs} when they want legato
+chords.  This can be achieved by setting @code{doubleSlurs}.
 
 "
   doctitle = "Using double slurs for legato chords"
--- old/using-ly-grob-object-to-access-grobs-with--tweak.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/using-ly-grob-object-to-access-grobs-with--tweak.ly 2019-10-08 12:21:01.581308656 +0200
@@ -2,30 +2,24 @@
 
 \header {
   texidoc = "
-Some grobs can be accessed “laterally” from within another grob’s
+Some grobs can be accessed “laterally” from within another grob's
 callback. These are usually listed as “layout objects” in the “Internal
 properties” section of a grob-interface. The function ly:grob-object is
 used to access these grobs.
 
-
 Demonstrated below are some ways of accessing grobs from within a
 NoteHead callback, but the technique is not limited to NoteHeads.
 However, the NoteHead callback is particularly important, since it is
 the implicit callback used by the @code{\\tweak} command.
 
-
 The example function defined below (\"display-grobs\") is probably not
 that useful, but it demonstrates that the grobs are indeed being
 accessed.
 
-
 Example console output:
 
-
 @code{ #Grob Accidental () #Grob Stem}
 
-
-
 "
   doctitle = "Using ly:grob-object to access grobs with \\tweak"
 }
@@ -66,3 +60,4 @@
   es
   g>1\arpeggio
 }
+
--- old/using-postscript-to-generate-special-note-head-shapes.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/using-postscript-to-generate-special-note-head-shapes.ly 2019-10-08 12:21:03.849165797 +0200
@@ -3,8 +3,9 @@
 \header {
   texidoc = "
 When a note head with a special shape cannot easily be generated with
-graphic markup, PostScript code can be used to generate the shape.
-This example shows how a parallelogram-shaped note head is generated.
+graphic markup, PostScript code can be used to generate the
+shape.  This example shows how a parallelogram-shaped note head is
+generated.
 
 "
   doctitle = "Using PostScript to generate special note head shapes"
--- old/using-tags-to-produce-mensural-and-modern-music-from-the-same-source.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/using-tags-to-produce-mensural-and-modern-music-from-the-same-source.ly 2019-10-08 12:21:05.137084667 +0200
@@ -8,8 +8,8 @@
 original, but with modern rests in the standard staff position.  Tags
 are used to produce different types of bar line at the end of the
 music, but tags can also be used where other differences are needed:
-for example using @qq{whole measure rests} (R1, R\\breve etc.) in
-modern music, but normal rests (r1, r\\breve, etc.) in the mensural
+for example using @qq{whole measure rests} (R1, R\\breve etc.) in modern
+music, but normal rests (r1, r\\breve, etc.) in the mensural
 version.  Note that converting mensural music to its modern equivalent
 is usually referred to as @code{transcription}.
 
@@ -81,3 +81,4 @@
     >>
   }
 }
+
--- old/using-the--tweak-command-to-tweak-individual-grobs.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/using-the--tweak-command-to-tweak-individual-grobs.ly 2019-10-08 12:21:01.461316214 +0200
@@ -2,8 +2,8 @@
 
 \header {
   texidoc = "
-With the @code{\\tweak} command, every grob can be tuned directly.
-Here are some examples of available tweaks.
+With the @code{\\tweak} command, every grob can be tuned
+directly.  Here are some examples of available tweaks.
 
 "
   doctitle = "Using the \\tweak command to tweak individual grobs"
--- old/using-the-whiteout-property.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/using-the-whiteout-property.ly 2019-10-08 12:21:05.985031253 +0200
@@ -7,11 +7,9 @@
 appearance of collisions in complex situations when repositioning
 objects is impractical.  It is necessary to explicitly set the
 @code{layer} property to control which objects are masked by the white
-background.
-
-In this example the collision of the tie with the time signature is
-improved by masking out the part of the tie that crosses the time
-signature by setting the @code{whiteout} property of
+background. In this example the collision of the tie with the time
+signature is improved by masking out the part of the tie that crosses
+the time signature by setting the @code{whiteout} property of
 @code{TimeSignature}. To do this @code{TimeSignature} is moved to a
 layer above @code{Tie}, which is left in the default layer of 1, and
 @code{StaffSymbol} is moved to a layer above @code{TimeSignature} so it
--- old/utf-8.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/utf-8.ly 2019-10-08 12:21:04.225142113 +0200
@@ -3,9 +3,9 @@
 \header {
   texidoc = "
 Various scripts may be used for texts (like titles and lyrics) by
-entering them in UTF-8 encoding, and using a Pango based backend.
-Depending on the fonts installed, this fragment will render Bulgarian
-(Cyrillic), Hebrew, Japanese and Portuguese.
+entering them in UTF-8 encoding, and using a Pango based
+backend.  Depending on the fonts installed, this fragment will render
+Bulgarian (Cyrillic), Hebrew, Japanese and Portuguese.
 
 "
   doctitle = "UTF-8"
@@ -63,5 +63,3 @@
 \addlyrics { \japanese }
 \addlyrics { \portuguese }
 
-
-
--- old/vertically-aligned-dynamics-and-textscripts.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/vertically-aligned-dynamics-and-textscripts.ly 2019-10-08 12:21:02.761234329 +0200
@@ -5,10 +5,9 @@
 All @code{DynamicLineSpanner} objects (hairpins and dynamic texts) are
 placed with their reference line at least @code{'staff-padding} from
 the staff, unless other notation forces them to be farther. Setting
-@code{'staff-padding} to a sufficiently large value aligns the dynamics.
-
-The same idea, together with @code{\\textLengthOn}, is used to align
-the text scripts along their baseline.
+@code{'staff-padding} to a sufficiently large value aligns the
+dynamics. The same idea, together with @code{\\textLengthOn}, is used
+to align the text scripts along their baseline.
 
 "
   doctitle = "Vertically aligned dynamics and textscripts"
@@ -27,3 +26,4 @@
   \override TextScript.staff-padding = #1
   \music
 }
+
--- old/vocal-ensemble-template.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/vocal-ensemble-template.ly 2019-10-08 12:21:00.729362322 +0200
@@ -89,3 +89,4 @@
     \context Lyrics = "basses" \lyricsto "basses" \bassWords
   >>
 }
+
--- old/vocal-ensemble-template-with-automatic-piano-reduction.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/vocal-ensemble-template-with-automatic-piano-reduction.ly 2019-10-08 12:21:02.405256753 +0200
@@ -4,7 +4,7 @@
   texidoc = "
 This template adds an automatic piano reduction to the standard SATB
 vocal score demonstrated in @qq{Vocal ensemble template}. This
-demonstrates one of the strengths of LilyPond – you can use a music
+demonstrates one of the strengths of LilyPond -- you can use a music
 definition more than once. If any changes are made to the vocal notes
 (say, @code{tenorMusic}), then the changes will also apply to the piano
 reduction.
@@ -97,3 +97,4 @@
     >>
   >>
 }
+
--- old/vocal-headword.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/vocal-headword.ly 2019-10-08 12:21:06.001030245 +0200
@@ -57,3 +57,4 @@
     % Freu -- de, Freu -- de,__
   }
 }
+
--- old/volta-text-markup-using-repeatcommands.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/volta-text-markup-using-repeatcommands.ly 2019-10-08 12:21:02.021280940 +0200
@@ -6,12 +6,11 @@
 context property @code{repeatCommands} must be used in cases where the
 volta text needs more advanced formatting with @code{\\markup}.
 
-
 Since @code{repeatCommands} takes a list, the simplest method of
 including markup is to use an identifier for the text and embed it in
-the command list using the Scheme syntax @code{#(list (list 'volta
-textIdentifier))}. Start- and end-repeat commands can be added as
-separate list elements:
+the command list using the Scheme syntax
+@code{#(list (list 'volta textIdentifier))}. Start- and end-repeat
+commands can be added as separate list elements:
 
 "
   doctitle = "Volta text markup using repeatCommands"
--- old/woodwind-diagrams-key-lists.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/woodwind-diagrams-key-lists.ly 2019-10-08 12:21:05.337072069 +0200
@@ -28,3 +28,4 @@
 #(print-keys-verbose 'contrabassoon (current-error-port))
 
 \score {c''1}
+

--- old/adding-beams,-slurs,-ties-etc.-when-using-tuplet-and-non-tuplet-rhythms.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/adding-beams,-slurs,-ties-etc.-when-using-tuplet-and-non-tuplet-rhythms.ly 2019-10-08 12:21:02.049279177 +0200
@@ -3,14 +3,17 @@
 \header {
   texidoc = "
 LilyPond syntax can involve many unusual placements for parentheses,
-brackets etc., which might sometimes have to be interleaved. For
-example, when entering a manual beam, the left square bracket has to be
-placed after the starting note and its duration, not before. Similarly,
-the right square bracket should directly follow the note which is to be
-at the end of the requested beaming, even if this note happens to be
-inside a tuplet section. This snippet demonstrates how to combine
-manual beaming, manual slurs, ties and phrasing slurs with tuplet
-sections (enclosed within curly braces).
+brackets etc., which might sometimes have to be interleaved.
+
+For example, when entering a manual beam, the left square bracket has
+to be placed @emph{after} the starting note and its duration, not
+before. Similarly, the right square bracket should directly follow the
+note which is to be at the end of the requested beaming, even if this
+note happens to be inside a tuplet section.
+
+This snippet demonstrates how to combine manual beaming, manual slurs,
+ties and phrasing slurs with tuplet sections (enclosed within curly
+braces).
 
 "
   doctitle = "Adding beams, slurs, ties etc. when using tuplet and non-tuplet rhythms"
--- old/adding-extra-fingering-with-scheme.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/adding-extra-fingering-with-scheme.ly 2019-10-08 12:21:00.549373660 +0200
@@ -3,11 +3,10 @@
 \header {
   texidoc = "
 You can add additional elements to notes using @code{map-some-music}.
-In this example, an extra script is attached to a note.
-
-In general, first do a @code{\\displayMusic} of the music you want to
-create, then write a function that will work on the appropriate parts
-of the music for you.
+In this example, an extra script is attached to a note. In general,
+first do a @code{\\displayMusic} of the music you want to create, then
+write a function that will work on the appropriate parts of the music
+for you.
 
 "
   doctitle = "Adding extra fingering with scheme"
--- old/adding-indicators-to-staves-which-get-split-after-a-break.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/adding-indicators-to-staves-which-get-split-after-a-break.ly 2019-10-08 12:21:04.465126996 +0200
@@ -3,10 +3,10 @@
 \header {
   texidoc = "
 This snippet defines the @code{\\splitStaffBarLine},
-@code{convUpStaffBarLine} and @code{convDownStaffBarLine} commands.
-These add arrows at a bar line, to denote that several voices sharing a
-staff will each continue on a staff of their own in the next system, or
-that voices split in this way recombine.
+@code{convUpStaffBarLine} and @code{convDownStaffBarLine}
+commands.  These add arrows at a bar line, to denote that several
+voices sharing a staff will each continue on a staff of their own in
+the next system, or that voices split in this way recombine.
 
 "
   doctitle = "Adding indicators to staves which get split after a break"
--- old/adding-links-to-objects.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/adding-links-to-objects.ly 2019-10-08 12:21:06.129022183 +0200
@@ -4,7 +4,9 @@
   texidoc = "
 To add a link to a grob-stencil you could use @code{add-link} as
 defined here. Works with @code{\\override} and @code{\\tweak}.
-Drawback: @code{point-and-click} will be disturbed for the linked grobs.
+
+Drawback: @code{point-and-click} will be disturbed for the linked
+grobs.
 
 Limitation: Works for PDF only.
 
--- old/adding-markups-in-a-tablature.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/adding-markups-in-a-tablature.ly 2019-10-08 12:21:04.561120949 +0200
@@ -2,8 +2,10 @@
 
 \header {
   texidoc = "
-By default markups does not show in a tablature. To make them appear,
-simply use the command @code{\\revert TabStaff.TextScript.stencil}
+By default markups does not show in a tablature.
+
+To make them appear, simply use the command
+@code{\\revert TabStaff.TextScript.stencil}
 
 "
   doctitle = "Adding markups in a tablature"
--- old/adding-timing-marks-to-long-glissandi.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/adding-timing-marks-to-long-glissandi.ly 2019-10-08 12:21:05.149083911 +0200
@@ -4,10 +4,9 @@
   texidoc = "
 Skipped beats in very long glissandi are sometimes indicated by timing
 marks, often consisting of stems without noteheads.  Such stems can
-also be used to carry intermediate expression markings.
-
-If the stems do not align well with the glissando, they may need to be
-repositioned slightly.
+also be used to carry intermediate expression markings. If the stems do
+not align well with the glissando, they may need to be repositioned
+slightly.
 
 "
   doctitle = "Adding timing marks to long glissandi"
--- old/adjusting-the-shape-of-falls-and-doits.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/adjusting-the-shape-of-falls-and-doits.ly 2019-10-08 12:21:00.929349724 +0200
@@ -3,7 +3,7 @@
 \header {
   texidoc = "
 The @code{shortest-duration-space} property may be tweaked to adjust
-the shape of falls and doits.
+the shape of @emph{falls} and @emph{doits}.
 
 "
   doctitle = "Adjusting the shape of falls and doits"
--- old/aligning-objects-created-with-the--mark-command.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/aligning-objects-created-with-the--mark-command.ly 2019-10-08 12:21:04.057152695 +0200
@@ -2,8 +2,8 @@
 
 \header {
   texidoc = "
-By default the @code{\\mark} command centers objects over a bar line.
-This behavior can be modified to align at right or left.  
+By default the @code{\\mark} command centers objects over a bar
+line.  This behavior can be modified to align at right or left.
 
 "
   doctitle = "Aligning objects created with the \\mark command"
--- old/ambitus.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/ambitus.ly 2019-10-08 12:21:01.165334859 +0200
@@ -4,9 +4,8 @@
   texidoc = "
 Ambitus indicate pitch ranges for voices.
 
-
-Accidentals only show up if they are not part of the key signature.
-@code{AmbitusNoteHead} grobs also have ledger lines.
+Accidentals only show up if they are not part of the key
+signature.  @code{AmbitusNoteHead} grobs also have ledger lines.
 
 "
   doctitle = "Ambitus"
--- old/applying-note-head-styles-depending-on-the-step-of-the-scale.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/applying-note-head-styles-depending-on-the-step-of-the-scale.ly 2019-10-08 12:21:01.557310167 +0200
@@ -4,11 +4,12 @@
   texidoc = "
 The @code{shapeNoteStyles} property can be used to define various note
 head styles for each step of the scale (as set by the key signature or
-the @code{tonic} property). This property requires a set of symbols,
-which can be purely arbitrary (geometrical expressions such as
-@code{triangle}, @code{cross}, and @code{xcircle} are allowed) or based
-on old American engraving tradition (some latin note names are also
-allowed).
+the @code{tonic} property).
+
+This property requires a set of symbols, which can be purely arbitrary
+(geometrical expressions such as @code{triangle}, @code{cross}, and
+@code{xcircle} are allowed) or based on old American engraving
+tradition (some latin note names are also allowed).
 
 That said, to imitate old American song books, there are several
 predefined note head styles available through shortcut commands such as
--- old/arabic-improvisation.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/arabic-improvisation.ly 2019-10-08 12:21:04.265139594 +0200
@@ -2,11 +2,12 @@
 
 \header {
   texidoc = "
-For improvisations or taqasim which are temporarily free, the time
-signature can be omitted and @code{\\cadenzaOn} can be used.  Adjusting
-the accidental style might be required, since the absence of bar lines
-will cause the accidental to be marked only once.  Here is an example
-of what could be the start of a hijaz improvisation:
+For improvisations or @emph{taqasim} which are temporarily free, the
+time signature can be omitted and @code{\\cadenzaOn} can be
+used.  Adjusting the accidental style might be required, since the
+absence of bar lines will cause the accidental to be marked only
+once.  Here is an example of what could be the start of a @emph{hijaz}
+improvisation:
 
 "
   doctitle = "Arabic improvisation"
--- old/arranging-separate-lyrics-on-a-single-line.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/arranging-separate-lyrics-on-a-single-line.ly 2019-10-08 12:21:04.421129767 +0200
@@ -3,9 +3,9 @@
 \header {
   texidoc = "
 Sometimes you may want to put lyrics for different performers on a
-single line: where there is rapidly alternating text, for example.
-This snippet shows how this can be done with @code{\\override
-VerticalAxisGroup.nonstaff-nonstaff-spacing.minimum-distance = ##f}.
+single line: where there is rapidly alternating text, for
+example.  This snippet shows how this can be done with
+@code{\\override VerticalAxisGroup.nonstaff-nonstaff-spacing.minimum-distance = ##f}.
 
 "
   doctitle = "Arranging separate lyrics on a single line"
--- old/automatically-change-durations.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/automatically-change-durations.ly 2019-10-08 12:21:01.245329820 +0200
@@ -3,8 +3,10 @@
 \header {
   texidoc = "
 @code{shiftDurations} can be used to change the note lengths of a piece
-of music. It takes two arguments - the scaling factor as a power of
-two, and the number of dots to be added as a positive integer.
+of music.
+
+It takes two arguments - the scaling factor as a power of two, and the
+number of dots to be added as a positive integer.
 
 "
   doctitle = "Automatically change durations"
--- old/bar-chords-notation-for-guitar-with-text-spanner.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/bar-chords-notation-for-guitar-with-text-spanner.ly 2019-10-08 12:21:03.725173608 +0200
@@ -3,13 +3,9 @@
 \header {
   texidoc = "
 Here is how to print bar chords (or barre chords) or half-bar chords
-(just uncomment the appropriate line for to select either one). The
-syntax is : @code{\\bbarre #\"fret_number\" note(s)}
-
-
-
-
+(just uncomment the appropriate line for to select either one).
 
+The syntax is : @code{\\bbarre #\"fret_number\" note(s)}
 
 "
   doctitle = "Bar chords notation for Guitar (with Text Spanner)"
--- old/beams-across-line-breaks.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/beams-across-line-breaks.ly 2019-10-08 12:21:03.833166805 +0200
@@ -2,8 +2,8 @@
 
 \header {
   texidoc = "
-Line breaks are normally forbidden when beams cross bar lines. This
-behavior can be changed as shown:
+Line breaks are normally forbidden when beams cross bar lines.@*
+This behavior can be changed as shown:
 
 "
   doctitle = "Beams across line breaks"
--- old/blanking-staff-lines-using-the--whiteout-command.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/blanking-staff-lines-using-the--whiteout-command.ly 2019-10-08 12:21:01.597307648 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-The @code{\\whiteout} command underlays a markup with a white box.
-Since staff lines are in a lower layer than most other grobs, this
-white box will not overlap any other grob.
+The @code{\\whiteout} command underlays a markup with a white
+box.  Since staff lines are in a lower layer than most other grobs,
+this white box will not overlap any other grob.
 
 "
   doctitle = "Blanking staff lines using the \\whiteout command"
--- old/broken-crescendo-hairpin.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/broken-crescendo-hairpin.ly 2019-10-08 12:21:00.997345441 +0200
@@ -5,15 +5,12 @@
 In order to make parts of a crescendo hairpin invisible, the following
 method is used: A white rectangle is drawn on top of the respective
 part of the crescendo hairpin, making it invisible.  The rectangle is
-defined as postscript code within a text markup.
-
-The markup command @code{with-dimensions} tells LilyPond to consider
-only the bottom edge of the rectangle when spacing it against the
-hairpin. The property @code{staff-padding} prevents the rectangle from
-fitting between the hairpin and staff.
-
-Make sure the hairpin is in a lower layer than the text markup to draw
-the rectangle over the hairpin.
+defined as postscript code within a text markup. The markup command
+@code{with-dimensions} tells LilyPond to consider only the bottom edge
+of the rectangle when spacing it against the hairpin. The property
+@code{staff-padding} prevents the rectangle from fitting between the
+hairpin and staff. Make sure the hairpin is in a lower layer than the
+text markup to draw the rectangle over the hairpin.
 
 "
   doctitle = "Broken Crescendo Hairpin"
--- old/center-text-below-hairpin-dynamics.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/center-text-below-hairpin-dynamics.ly 2019-10-08 12:21:01.329324529 +0200
@@ -3,9 +3,9 @@
 \header {
   texidoc = "
 This example provides a function to typeset a hairpin (de)crescendo
-with some additional text below it, such as @qq{molto} or @qq{poco}.
-The added text will change the direction according to the direction of
-the hairpin. The Hairpin is aligned to DynamicText.
+with some additional text below it, such as @qq{molto} or @qq{poco}. The
+added text will change the direction according to the direction of the
+hairpin. The Hairpin is aligned to DynamicText.
 
 The example also illustrates how to modify the way an object is
 normally printed, using some Scheme code.
--- old/changing-ottava-text.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/changing-ottava-text.ly 2019-10-08 12:21:05.409067534 +0200
@@ -5,9 +5,8 @@
 Internally, @code{\\ottava} sets the properties @code{ottavation} (for
 example, to @code{8va} or @code{8vb}) and @code{middleCPosition}.  To
 override the text of the bracket, set @code{ottavation} after invoking
-@code{\\ottava}.
-
-Short text is especially useful when a brief ottava is used.
+@code{\\ottava}. Short text is especially useful when a brief ottava is
+used.
 
 "
   doctitle = "Changing ottava text"
--- old/changing-text-and-spanner-styles-for-text-dynamics.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/changing-text-and-spanner-styles-for-text-dynamics.ly 2019-10-08 12:21:03.093213416 +0200
@@ -2,8 +2,8 @@
 
 \header {
   texidoc = "
-The text used for crescendos and decrescendos can be changed by
-modifying the context properties @code{crescendoText} and
+The text used for @emph{crescendos} and @emph{decrescendos} can be
+changed by modifying the context properties @code{crescendoText} and
 @code{decrescendoText}.
 
 The style of the spanner line can be changed by modifying the
--- old/changing-the-tuplet-number.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/changing-the-tuplet-number.ly 2019-10-08 12:21:00.277390793 +0200
@@ -4,10 +4,9 @@
   texidoc = "
 By default, only the numerator of the tuplet number is printed over the
 tuplet bracket, i.e., the numerator of the argument to the
-@code{\\tuplet} command.
-
-Alternatively, num:den of the tuplet number may be printed, or the
-tuplet number may be suppressed altogether.
+@code{\\tuplet} command. Alternatively, @emph{num}:@emph{den} of the
+tuplet number may be printed, or the tuplet number may be suppressed
+altogether.
 
 "
   doctitle = "Changing the tuplet number"
--- old/chord-glissando-in-tablature.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/chord-glissando-in-tablature.ly 2019-10-08 12:21:05.645052669 +0200
@@ -3,9 +3,10 @@
 \header {
   texidoc = "
 Slides for chords are indicated by default in both @code{Staff} and
-@code{TabStaff}. String numbers are necessary for @code{TabStaff}
-because automatic string calculations are different for chords and for
-single notes.
+@code{TabStaff}.
+
+String numbers are necessary for @code{TabStaff} because automatic
+string calculations are different for chords and for single notes.
 
 "
   doctitle = "Chord glissando in tablature"
--- old/chord-names-alternative.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/chord-names-alternative.ly 2019-10-08 12:21:00.429381219 +0200
@@ -5,13 +5,11 @@
 Chord names are generated from a list of pitches.  The functions which
 construct these names can be customised.
 
-
 Here are shown chords following Ignatzek (pp. 17-18, 1995), used by
 default since LilyPond 1.7.20, compared with an alternative Jazz chord
-notation and Harald Banter’s (1987) notation.  A smaller font is used
+notation and Harald Banter's (1987) notation.  A smaller font is used
 in the latter case, as these tend to be overly verbose.
 
-
 This mirrors the mechanism originally used in early LilyPond versions
 (pre-1.7); not having been properly maintained, however, some features
 have been lost (mainly chord exception lists) and bugs have been
--- old/chords-with-stretched-fingering-for-fretboards-and-tabvoice.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/chords-with-stretched-fingering-for-fretboards-and-tabvoice.ly 2019-10-08 12:21:06.281012608 +0200
@@ -2,12 +2,12 @@
 
 \header {
   texidoc = "
-Sometimes chords with a stretched fingering are required.  If not
-otherwise specified the context-property @code{maximumFretStretch} is
-set to @code{4}, though. Resulting in a warning about \"No string for
-pitch ...\" and the note is omitted.  You may set
-@code{maximumFretStretch} to an approppriate value or explecitely
-assign string-numbers to all notes of a chord.
+Sometimes chords with a stretched fingering are required.@*
+If not otherwise specified the context-property
+@code{maximumFretStretch} is set to @code{4}, though. Resulting in a
+warning about \"No string for pitch ...\" and the note is omitted.@*
+You may set @code{maximumFretStretch} to an approppriate value or
+explecitely assign string-numbers to all notes of a chord.
 
 "
   doctitle = "Chords with stretched fingering for FretBoards and TabVoice"
--- old/clip-systems.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/clip-systems.ly 2019-10-08 12:21:01.193333095 +0200
@@ -5,11 +5,9 @@
 This code shows how to clip (extract) snippets from a full score.
 
 This file needs to be run separately with @code{-dclip-systems}; the
-snippets page may not adequately show the results.
-
-The result will be files named
-@samp{base-from-start-to-end[-count].eps}.
-
+snippets page may not adequately show the results. The result will be
+files named
+@samp{@emph{base}-from-@emph{start}-to-@emph{end}[-@emph{count}].eps}.
 
 If system starts and ends are included, they include extents of the
 System grob, e.g., instrument names.
--- old/combining-dynamics-with-markup-texts.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/combining-dynamics-with-markup-texts.ly 2019-10-08 12:21:01.305326041 +0200
@@ -3,8 +3,7 @@
 \header {
   texidoc = "
 Some dynamics may involve text indications (such as @qq{più forte} or
-@qq{piano subito}). These can be produced using a @code{\\markup}
-block.
+@qq{piano subito}). These can be produced using a @code{\\markup} block.
 
 "
   doctitle = "Combining dynamics with markup texts"
--- old/combining-two-parts-on-the-same-staff.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/combining-two-parts-on-the-same-staff.ly 2019-10-08 12:21:00.373384746 +0200
@@ -6,9 +6,10 @@
 combination of several different parts on the same staff.  Text
 directions such as @qq{solo} or @qq{a2} are added by default; to remove
 them, simply set the property @code{printPartCombineTexts} to @code{f}.
-For vocal scores (hymns), there is no need to add @qq{solo/a2} texts,
-so they should be switched off.  However, it might be better not to use
-it if there are any solos, as they won't be indicated.  In such cases,
+
+For vocal scores (hymns), there is no need to add @qq{solo/a2} texts, so
+they should be switched off.  However, it might be better not to use it
+if there are any solos, as they won't be indicated.  In such cases,
 standard polyphonic notation may be preferable.
 
 This snippet presents the three ways two parts can be printed on a same
--- old/compound-time-signatures.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/compound-time-signatures.ly 2019-10-08 12:21:05.533059724 +0200
@@ -4,11 +4,9 @@
   texidoc = "
 Odd 20th century time signatures (such as \"5/8\") can often be played
 as compound time signatures (e.g. \"3/8 + 2/8\"), which combine two or
-more inequal metrics.
-
-LilyPond can make such music quite easy to read and play, by explicitly
-printing the compound time signatures and adapting the automatic
-beaming behavior.
+more inequal metrics. LilyPond can make such music quite easy to read
+and play, by explicitly printing the compound time signatures and
+adapting the automatic beaming behavior.
 
 "
   doctitle = "Compound time signatures"
--- old/conducting-signs,-measure-grouping-signs.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/conducting-signs,-measure-grouping-signs.ly 2019-10-08 12:21:01.093339394 +0200
@@ -4,20 +4,18 @@
   texidoc = "
 Beat grouping within a measure is controlled by the context property
 @code{beatStructure}.  Values of @code{beatStructure} are established
-for many time signatures in @code{scm/time-signature-settings.scm}.
-Values of @code{beatStructure} can be changed or set with @code{\\set}.
-Alternatively, @code{\\time} can be used to both set the time signature
-and establish the beat structure. For this, you specify the internal
-grouping of beats in a measure as a list of numbers (in Scheme syntax)
-before the time signature.
-
-@code{\\time} applies to the @code{Timing} context, so it will not
-reset values of @code{beatStructure} or @code{baseMoment} that are set
-in other lower-level contexts, such as @code{Voice}.
-
-If the @code{Measure_grouping_engraver} is included in one of the
-display contexts, measure grouping signs will be created.  Such signs
-ease reading rhythmically complex modern music. In the example, the 9/8
+for many time signatures in
+@code{scm/time-signature-settings.scm}.  Values of @code{beatStructure}
+can be changed or set with @code{\\set}. Alternatively, @code{\\time}
+can be used to both set the time signature and establish the beat
+structure. For this, you specify the internal grouping of beats in a
+measure as a list of numbers (in Scheme syntax) before the time
+signature. @code{\\time} applies to the @code{Timing} context, so it
+will not reset values of @code{beatStructure} or @code{baseMoment} that
+are set in other lower-level contexts, such as @code{Voice}. If the
+@code{Measure_grouping_engraver} is included in one of the display
+contexts, measure grouping signs will be created.  Such signs ease
+reading rhythmically complex modern music. In the example, the 9/8
 measure is grouped in two different patterns using the two different
 methods, while the 5/8 measure is grouped according to the default
 setting in @code{scm/time-signature-settings.scm}:
--- old/consistently-left-aligned-bar-numbers.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/consistently-left-aligned-bar-numbers.ly 2019-10-08 12:21:06.101023946 +0200
@@ -3,8 +3,10 @@
 \header {
   texidoc = "
 When left aligning bar numbers, overlapping problems may occur with
-Staves brackets.  The snippet solves this by keeping right aligned the
-first bar number following line breaks.
+Staves brackets.
+
+The snippet solves this by keeping right aligned the first bar number
+following line breaks.
 
 "
   doctitle = "Consistently left aligned bar numbers"
--- old/controlling-spanner-visibility-after-a-line-break.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/controlling-spanner-visibility-after-a-line-break.ly 2019-10-08 12:21:05.629053677 +0200
@@ -4,14 +4,11 @@
   texidoc = "
 The visibility of spanners which end on the first note following a line
 break is controlled by the @code{after-line-breaking} callback
-@code{ly:spanner::kill-zero-spanned-time}.
-
-For objects such as glissandos and hairpins, the default behaviour is
-to hide the spanner after a break; disabling the callback will allow
-the left-broken span to be shown.
-
-Conversely, spanners which are usually visible, such as text spans, can
-be hidden by enabling the callback.
+@code{ly:spanner::kill-zero-spanned-time}. For objects such as
+glissandos and hairpins, the default behaviour is to hide the spanner
+after a break; disabling the callback will allow the left-broken span
+to be shown. Conversely, spanners which are usually visible, such as
+text spans, can be hidden by enabling the callback.
 
 "
   doctitle = "Controlling spanner visibility after a line break"
--- old/controlling-the-vertical-ordering-of-scripts.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/controlling-the-vertical-ordering-of-scripts.ly 2019-10-08 12:21:03.249203590 +0200
@@ -5,11 +5,11 @@
 The vertical ordering of scripts is controlled with the
 @code{'script-priority} property. The lower this number, the closer it
 will be put to the note. In this example, the @code{TextScript} (the
-sharp symbol) first has the lowest priority, so it is put lowest in the
-first example. In the second, the prall trill (the @code{Script}) has
-the lowest, so it is on the inside. When two objects have the same
-priority, the order in which they are entered determines which one
-comes first.
+@emph{sharp} symbol) first has the lowest priority, so it is put lowest
+in the first example. In the second, the @emph{prall trill} (the
+@code{Script}) has the lowest, so it is on the inside. When two objects
+have the same priority, the order in which they are entered determines
+which one comes first.
 
 "
   doctitle = "Controlling the vertical ordering of scripts"
--- old/controlling-tuplet-bracket-visibility.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/controlling-tuplet-bracket-visibility.ly 2019-10-08 12:21:00.637368117 +0200
@@ -3,8 +3,9 @@
 \header {
   texidoc = "
 The default behavior of tuplet-bracket visibility is to print a bracket
-unless there is a beam of the same length as the tuplet. To control the
-visibility of tuplet brackets, set the property
+unless there is a beam of the same length as the tuplet.
+
+To control the visibility of tuplet brackets, set the property
 @code{'bracket-visibility} to either @code{#t} (always print a
 bracket), @code{#f} (never print a bracket) or @code{#'if-no-beam}
 (only print a bracket if there is no beam).
--- old/creating-a-delayed-turn.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-a-delayed-turn.ly 2019-10-08 12:21:04.377132539 +0200
@@ -5,9 +5,9 @@
 Creating a delayed turn, where the lower note of the turn uses the
 accidental, requires several overrides.  The
 @code{outside-staff-priority} property must be set to @code{#f}, as
-otherwise this would take precedence over the @code{avoid-slur
-property}.  Changing the fractions @code{2/3} and @code{1/3} adjusts
-the horizontal position.
+otherwise this would take precedence over the
+@code{avoid-slur property}.  Changing the fractions @code{2/3} and
+@code{1/3} adjusts the horizontal position.
 
 "
   doctitle = "Creating a delayed turn"
--- old/creating-arpeggios-across-notes-in-different-voices.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-arpeggios-across-notes-in-different-voices.ly 2019-10-08 12:21:03.365196283 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-An arpeggio can be drawn across notes in different voices on the same
-staff if the @code{Span_arpeggio_engraver} is added to the @code{Staff}
-context:
+An @emph{arpeggio} can be drawn across notes in different voices on the
+same staff if the @code{Span_arpeggio_engraver} is added to the
+@code{Staff} context:
 
 "
   doctitle = "Creating arpeggios across notes in different voices"
--- old/creating-a-sequence-of-notes-on-various-pitches.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-a-sequence-of-notes-on-various-pitches.ly 2019-10-08 12:21:01.969284216 +0200
@@ -3,10 +3,11 @@
 \header {
   texidoc = "
 In music that contains many occurrences of the same sequence of notes
-at different pitches, the following music function may prove useful.
-It takes a note, of which only the pitch is used.   This example
-creates the rhythm used throughout Mars, from Gustav Holst's The
-Planets.
+at different pitches, the following music function may prove
+useful.  It takes a note, of which only the pitch is used.  
+
+This example creates the rhythm used throughout @emph{Mars}, from
+Gustav Holst's @emph{The Planets}.
 
 "
   doctitle = "Creating a sequence of notes on various pitches"
--- old/creating-cross-staff-arpeggios-in-a-piano-staff.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-cross-staff-arpeggios-in-a-piano-staff.ly 2019-10-08 12:21:03.337198047 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-In a @code{PianoStaff}, it is possible to let an arpeggio cross between
-the staves by setting the property @code{PianoStaff.connectArpeggios}.
-
+In a @code{PianoStaff}, it is possible to let an @emph{arpeggio} cross
+between the staves by setting the property
+@code{PianoStaff.connectArpeggios}.
 
 "
   doctitle = "Creating cross-staff arpeggios in a piano staff"
--- old/creating-cross-staff-arpeggios-in-other-contexts.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-cross-staff-arpeggios-in-other-contexts.ly 2019-10-08 12:21:03.349197291 +0200
@@ -2,7 +2,7 @@
 
 \header {
   texidoc = "
-Cross-staff arpeggios can be created in contexts other than
+Cross-staff @emph{arpeggios} can be created in contexts other than
 @code{GrandStaff}, @code{PianoStaff} and @code{StaffGroup} if the
 @code{Span_arpeggio_engraver} is included in the @code{Score} context.
 
--- old/creating-simultaneous-rehearsal-marks.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/creating-simultaneous-rehearsal-marks.ly 2019-10-08 12:21:04.029154459 +0200
@@ -3,11 +3,13 @@
 \header {
   texidoc = "
 Unlike text scripts, rehearsal marks cannot be stacked at a particular
-point in a score: only one @code{RehearsalMark} object is created.
-Using an invisible measure and bar line, an extra rehearsal mark can be
-added, giving the appearance of two marks in the same column. This
-method may also prove useful for placing rehearsal marks at both the
-end of one system and the start of the following system.
+point in a score: only one @code{RehearsalMark} object is
+created.  Using an invisible measure and bar line, an extra rehearsal
+mark can be added, giving the appearance of two marks in the same
+column.
+
+This method may also prove useful for placing rehearsal marks at both
+the end of one system and the start of the following system.
 
 "
   doctitle = "Creating simultaneous rehearsal marks"
--- old/creating-slurs-across-voices.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/creating-slurs-across-voices.ly 2019-10-08 12:21:00.593370889 +0200
@@ -3,13 +3,9 @@
 \header {
   texidoc = "
 In some situations, it may be necessary to create slurs between notes
-from different voices.
-
-The solution is to add invisible notes to one of the voices, using
-@code{\\hideNotes}.
-
-This example is measure 235 of the Ciaconna from Bach's 2nd Partita for
-solo violin, BWV 1004.
+from different voices. The solution is to add invisible notes to one of
+the voices, using @code{\\hideNotes}. This example is measure 235 of
+the Ciaconna from Bach's 2nd Partita for solo violin, BWV 1004.
 
 "
   doctitle = "Creating slurs across voices"
--- old/cross-staff-chords---beaming-problems-workaround.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/cross-staff-chords---beaming-problems-workaround.ly 2019-10-08 12:21:02.137273634 +0200
@@ -7,8 +7,8 @@
 avoidance then arise.  If the stems from the lower staff were used in
 the following example, it would be necessary to change the automatic
 beam collision avoidance settings so that it doesn't detect collisions
-between staves using @code{\\override Staff.Beam.collision-voice-only =
-##t}
+between staves using
+@code{\\override Staff.Beam.collision-voice-only = ##t}
 
 "
   doctitle = "Cross-staff chords - beaming problems workaround"
--- old/cross-staff-stems.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/cross-staff-stems.ly 2019-10-08 12:21:05.425066527 +0200
@@ -3,9 +3,8 @@
 \header {
   texidoc = "
 This snippet shows the use of the @code{Span_stem_engraver} and
-@code{\\crossStaff} to connect stems across staves automatically.
-
-The stem length need not be specified, as the variable distance between
+@code{\\crossStaff} to connect stems across staves automatically. The
+stem length need not be specified, as the variable distance between
 noteheads and staves is calculated automatically.
 
 "
--- old/customize-drumpitchnames,-drumstyletable-and-drumpitchtable-in-layout-and-midi.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/customize-drumpitchnames,-drumstyletable-and-drumpitchtable-in-layout-and-midi.ly 2019-10-08 12:21:05.449065015 +0200
@@ -3,12 +3,21 @@
 \header {
   texidoc = "
 If you want to use customized drum-pitch-names for an own drum-style
-with proper output for layout and midi, follow the steps as
+with proper output for layout @emph{and} midi, follow the steps as
 demonstrated in the code below. In short:
 
-* define the names * define the appearence * tell LilyPond to use it
-for layout * assign pitches to the names * tell LilyPond to use them
-for midi
+@itemize
+@item
+define the names
+@item
+define the appearence
+@item
+tell LilyPond to use it for layout
+@item
+assign pitches to the names
+@item
+tell LilyPond to use them for midi
+@end itemize
 
 "
   doctitle = "Customize drumPitchNames, drumStyleTable and drumPitchTable in layout and midi"
--- old/defining-an-engraver-in-scheme--ambitus-engraver.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/defining-an-engraver-in-scheme--ambitus-engraver.ly 2019-10-08 12:21:05.601055440 +0200
@@ -3,10 +3,8 @@
 \header {
   texidoc = "
 This example demonstrates how the ambitus engraver may be defined on
-the user side, with a Scheme engraver.
-
-This is basically a rewrite in Scheme of the code from
-@code{lily/ambitus-engraver.cc}.
+the user side, with a Scheme engraver. This is basically a rewrite in
+Scheme of the code from @code{lily/ambitus-engraver.cc}.
 
 "
   doctitle = "Defining an engraver in Scheme: ambitus engraver"
--- old/defining-predefined-fretboards-for-other-instruments.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/defining-predefined-fretboards-for-other-instruments.ly 2019-10-08 12:21:03.989156979 +0200
@@ -5,7 +5,7 @@
 Predefined fret diagrams can be added for new instruments in addition
 to the standards used for guitar.  This file shows how this is done by
 defining a new string-tuning and a few predefined fretboards for the
-Venezuelan cuatro.
+Venezuelan @emph{cuatro}.
 
 This file also shows how fingerings can be included in the chords used
 as reference points for the chord lookup, and displayed in  the fret
--- old/demo-midiinstruments.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/demo-midiinstruments.ly 2019-10-08 12:21:02.205269351 +0200
@@ -3,9 +3,9 @@
 \header {
   texidoc = "
 Problem: How to know which @code{midiInstrument} would be best for your
-composition? Solution: A LilyPond demo file.
-
+composition?
 
+Solution: A LilyPond demo file.
 
 "
   doctitle = "Demo MidiInstruments"
--- old/displaying-a-whole-grandstaff-system-if-only-one-of-its-staves-is-alive.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/displaying-a-whole-grandstaff-system-if-only-one-of-its-staves-is-alive.ly 2019-10-08 12:21:06.157020419 +0200
@@ -6,9 +6,8 @@
 silent for a while and their staves can be removed for that time (with
 @code{\\removeEmptyStaves}).
 
-
-When they play again it is often preferred to show the staves of all
-instruments of such a group. this can be done adding the
+When they play again it is often preferred to show the staves of
+@emph{all instruments of such a group}. this can be done adding the
 @code{Keep_alive_together_engraver} in the grouper (e.g. a GrandStaff
 or a StaffGroup)
 
--- old/displaying-grob-ancestry.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/displaying-grob-ancestry.ly 2019-10-08 12:21:01.773296562 +0200
@@ -3,16 +3,14 @@
 \header {
   texidoc = "
 When working with grob callbacks, it can be helpful to understand a
-grob’s ancestry. Most grobs have parents which influence the
+grob's ancestry. Most grobs have parents which influence the
 positioning of the grob. X- and Y-parents influence the horizontal and
 vertical positions for the grob, respectively. Additionally, each
 parent may have parents of its own.
 
-
-Unfortunately, there are several aspects of a grob’s ancestry that can
+Unfortunately, there are several aspects of a grob's ancestry that can
 lead to confusion:
 
-
 * The types of parents a grob has may depend on context.
 
 * For some grobs, the X- and Y-parents are the same.
@@ -21,33 +19,20 @@
 
 * The concept of “generations” is misleading.
 
-
 For example, the @code{System} grob can be both parent (on the Y-side)
 and grandparent (twice on the X-side) to a @code{VerticalAlignment}
 grob.
 
-
-This macro prints (to the console) a textual representation of a grob’s
+This macro prints (to the console) a textual representation of a grob's
 ancestry.
 
 When called this way:
 
-@code{@{ \\once \\override NoteHead.before-line-breaking =
-#display-ancestry c @}}
+@code{@{ \\once \\override NoteHead.before-line-breaking = #display-ancestry c @}}
 
 The following output is generated:
 
-
-@code{NoteHead X,Y: NoteColumn
-     X: PaperColumn
-        X,Y: System
-     Y: VerticalAxisGroup
-        X: NonMusicalPaperColumn
-           X,Y: System
-        Y: VerticalAlignment
-           X: NonMusicalPaperColumn
-              X,Y: System
-           Y: System}
+@code{NoteHead X,Y: NoteColumn      X: PaperColumn         X,Y: System      Y: VerticalAxisGroup         X: NonMusicalPaperColumn            X,Y: System         Y: VerticalAlignment            X: NonMusicalPaperColumn               X,Y: System            Y: System}@*
 
 "
   doctitle = "Displaying grob ancestry"
--- old/editorial-headword.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/editorial-headword.ly 2019-10-08 12:21:00.773359551 +0200
@@ -2,10 +2,8 @@
 
 \header {
   texidoc = "
-NR 1.7 Editorial annotations
-
-Beethoven, Op. 31, No. 3 Piano sonata 18, Movt II, Scherzo Measures 9 -
-14
+NR 1.7 Editorial annotations Beethoven, Op. 31, No. 3 Piano sonata 18,
+Movt II, Scherzo Measures 9 - 14
 
 "
   doctitle = "Editorial headword"
--- old/engravers-one-by-one.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/engravers-one-by-one.ly 2019-10-08 12:21:01.649304373 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-The notation problem, creating a certain symbol, is handled by plugins.
- Each plugin is called an Engraver. In this example, engravers are
-switched on one by one, in the following order:
+The notation problem, creating a certain symbol, is handled by
+plugins.  Each plugin is called an Engraver. In this example, engravers
+are switched on one by one, in the following order:
 
 - note heads,
 
--- old/entering-several-tuplets-using-only-one--tuplet-command.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/entering-several-tuplets-using-only-one--tuplet-command.ly 2019-10-08 12:21:02.665240375 +0200
@@ -5,12 +5,11 @@
 The property @code{tupletSpannerDuration} sets how long each of the
 tuplets contained within the brackets after @code{\\tuplet} should
 last. Many consecutive tuplets can then be placed within a single
-@code{\\tuplet} expression, thus saving typing.
-
-There are several ways to set @code{tupletSpannerDuration}.  The
-command @code{\\tupletSpan} sets it to a given duration, and clears it
-when instead of a duration @code{\\default} is specified.  Another way
-is to use an optional argument with @code{\\tuplet}.
+@code{\\tuplet} expression, thus saving typing. There are several ways
+to set @code{tupletSpannerDuration}.  The command @code{\\tupletSpan}
+sets it to a given duration, and clears it when instead of a duration
+@code{\\default} is specified.  Another way is to use an optional
+argument with @code{\\tuplet}.
 
 "
   doctitle = "Entering several tuplets using only one \\tuplet command"
--- old/extending-a-trillspanner.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/extending-a-trillspanner.ly 2019-10-08 12:21:00.389383739 +0200
@@ -4,8 +4,10 @@
   texidoc = "
 For @code{TrillSpanner}, the @code{minimum-length} property becomes
 effective only if the @code{set-spacing-rods} procedure is called
-explicitly.  To do this, the @code{springs-and-rods} property should be
-set to @code{ly:spanner::set-spacing-rods}.
+explicitly.
+
+To do this, the @code{springs-and-rods} property should be set to
+@code{ly:spanner::set-spacing-rods}.
 
 "
   doctitle = "Extending a TrillSpanner"
--- old/extending-glissandi-across-repeats.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/extending-glissandi-across-repeats.ly 2019-10-08 12:21:05.557058212 +0200
@@ -7,10 +7,9 @@
 start of each @code{\\alternative} block.  The grace note should be at
 the same pitch as the note which starts the initial glissando.  This is
 implemented here with a music function which takes the pitch of the
-grace note as its argument.
-
-Note that in polyphonic music the grace note must be matched with
-corresponding grace notes in all other voices.
+grace note as its argument. Note that in polyphonic music the grace
+note must be matched with corresponding grace notes in all other
+voices.
 
 "
   doctitle = "Extending glissandi across repeats"
--- old/flamenco-notation.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/flamenco-notation.ly 2019-10-08 12:21:02.913224754 +0200
@@ -4,17 +4,25 @@
   texidoc = "
 For flamenco guitar, special notation is used:
 
-
-* a golpe symbol to indicate a slap on the guitar body with the nail of
-the ring finger * an arrow to indicate (the direction of) strokes *
+@itemize
+@item
+a @emph{golpe} symbol to indicate a slap on the guitar body with the
+nail of the ring finger
+@item
+an arrow to indicate (the direction of) strokes
+@item
 different letters for fingering (@qq{p}: thumb, @qq{i}: index finger,
-@qq{m}: middle finger, @qq{a}: ring finger and @qq{x}: little finger) *
-3- and 4-finger rasgueados; stroke upwards with all fingers, ending
-with an up- and down using the index finger * abanicos: strokes (in
-tuples) with thumb (down), little and index finger (both up). There's
-also an abanico 2 where middle and ring finger are used instead of the
-little finger. * alza pua: fast playing with the thumb
-
+@qq{m}: middle finger, @qq{a}: ring finger and @qq{x}: little finger)
+@item
+3- and 4-finger @emph{rasgueados}; stroke upwards with all fingers,
+ending with an up- and down using the index finger
+@item
+@emph{abanicos}: strokes (in tuples) with thumb (down), little and
+index finger (both up). There's also an @emph{abanico 2} where middle
+and ring finger are used instead of the little finger.
+@item
+@emph{alza pua}: fast playing with the thumb
+@end itemize
 
 Most figures use arrows in combination with fingering; with abanicos
 and rasgueados, noteheads are printed only for the first chord.
--- old/flat-ties.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/flat-ties.ly 2019-10-08 12:21:04.549121705 +0200
@@ -3,10 +3,10 @@
 \header {
   texidoc = "
 The function takes the default @code{Tie.stencil} as an argument,
-calculating the result relying on the extents of this default. Further
-tweaking is possible by overriding @code{Tie.details.height-limit} or
-with @code{\\shape}. It's also possible to change the custom-definition
-on the fly.
+calculating the result relying on the extents of this default.@*
+Further tweaking is possible by overriding
+@code{Tie.details.height-limit} or with @code{\\shape}. It's also
+possible to change the custom-definition on the fly.
 
 "
   doctitle = "Flat Ties"
--- old/forcing-a-clef-symbol-to-be-displayed.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/forcing-a-clef-symbol-to-be-displayed.ly 2019-10-08 12:21:04.073151688 +0200
@@ -5,8 +5,8 @@
 When a clef sign has already been displayed and it has not been changed
 to a different clef, then repeating the @code{\\clef} command will be
 ignored by LilyPond, since it is not a change of clef.  It is possible
-to force the clef to be redisplayed using the command @code{\\set
-Staff.forceClef = ##t}.
+to force the clef to be redisplayed using the command
+@code{\\set Staff.forceClef = ##t}.
 
 "
   doctitle = "Forcing a clef symbol to be displayed"
--- old/forcing-measure-width-to-adapt-to-metronomemarks-width.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/forcing-measure-width-to-adapt-to-metronomemarks-width.ly 2019-10-08 12:21:04.577119941 +0200
@@ -2,9 +2,10 @@
 
 \header {
   texidoc = "
-By default, metronome marks do not influence horizontal spacing.   This
-can be solved through a simple override, as shown in the second half of
-the example.
+By default, metronome marks do not influence horizontal spacing.
+
+This can be solved through a simple override, as shown in the second
+half of the example.
 
 "
   doctitle = "Forcing measure width to adapt to MetronomeMark's width"
--- old/fretboards-alternate-tables.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/fretboards-alternate-tables.ly 2019-10-08 12:21:05.505061487 +0200
@@ -3,16 +3,12 @@
 \header {
   texidoc = "
 Alternate fretboard tables can be created.  These would be used in
-order to have alternate fretboards for a given chord.
-
-In order to use an alternate fretboard table, the table must first be
-created.  Fretboards are then added to the table.
-
-The created fretboard table can be blank, or it can be copied from an
-existing table.
-
-The table to be used in displaying predefined fretboards is selected by
-the property @code{\\predefinedDiagramTable}.
+order to have alternate fretboards for a given chord. In order to use
+an alternate fretboard table, the table must first be
+created.  Fretboards are then added to the table. The created fretboard
+table can be blank, or it can be copied from an existing table. The
+table to be used in displaying predefined fretboards is selected by the
+property @code{\\predefinedDiagramTable}.
 
 "
   doctitle = "Fretboards alternate tables"
--- old/generating-whole-scores-also-book-parts-in-scheme-without-using-the-parser.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/generating-whole-scores-also-book-parts-in-scheme-without-using-the-parser.ly 2019-10-08 12:21:04.249140602 +0200
@@ -5,27 +5,34 @@
 A lilypond score internally is just a Scheme expression, generated by
 the lilypond parser. Using scheme, one can also automatically generate
 a score without an input file. If you have the music expression in
-scheme, a score can be generated by simply calling (scorify-music music
-parser) on your music. This will generate a score object, for which you
-can then set a custom layout block with (let* ((layout
-(ly:output-def-clone $defaultlayout)))
+scheme, a score can be generated by simply calling
+
+@verbatim
+(scorify-music music parser)
+@end verbatim
+
+on your music. This will generate a score object, for which you can
+then set a custom layout block with
+
+@verbatim
+(let* ((layout (ly:output-def-clone $defaultlayout)))
    ; modify the layout here, then assign it:
    (ly:score-add-output-def! score layout)
   )
-
+@end verbatim
 
 Finally, all you have to do it to pass this score to lilypond for
-typesetting. This snippet defines functions @code{(add-score parser
-score)}, @code{(add-text parser text)} and @code{(add-music parser
-music)} to pass a complete score, some markup or some music to lilypond
-for typesetting.
-
-This snippet also works for typesetting scores inside a @code{\\book
-@{...@}} block, as well as top-level scores. To achieve this, each
-score schedulled for typesetting is appended to the list of toplevel
-scores and the toplevel-book-handler (which is a scheme function called
-to process a book once a @code{\\book@{..@}} block is closed) is
-modified to inser all collected scores so far to the book.
+typesetting. This snippet defines functions
+@code{(add-score parser score)}, @code{(add-text parser text)} and
+@code{(add-music parser music)} to pass a complete score, some markup
+or some music to lilypond for typesetting.
+
+This snippet also works for typesetting scores inside a
+@code{\\book @{...@}} block, as well as top-level scores. To achieve
+this, each score schedulled for typesetting is appended to the list of
+toplevel scores and the toplevel-book-handler (which is a scheme
+function called to process a book once a @code{\\book@{..@}} block is
+closed) is modified to inser all collected scores so far to the book.
 
 "
   doctitle = "Generating whole scores (also book parts) in scheme without using the parser"
--- old/hiding-the-extender-line-for-text-dynamics.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/hiding-the-extender-line-for-text-dynamics.ly 2019-10-08 12:21:02.493251210 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-Text style dynamic changes (such as cresc. and dim.) are printed with a
-dashed line showing their extent.  This line can be suppressed in the
-following way:
+Text style dynamic changes (such as @emph{cresc.} and @emph{dim.}) are
+printed with a dashed line showing their extent.  This line can be
+suppressed in the following way:
 
 "
   doctitle = "Hiding the extender line for text dynamics"
--- old/horizontally-aligning-custom-dynamics-e.g.-sempre-pp,-piu-f,-subito-p.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/horizontally-aligning-custom-dynamics-e.g.-sempre-pp,-piu-f,-subito-p.ly 2019-10-08 12:21:02.789232565 +0200
@@ -2,45 +2,44 @@
 
 \header {
   texidoc = "
-Some dynamic expressions involve additional text, like @qq{sempre pp}.
-Since dynamics are usually centered under the note, the \\pp would be
-displayed way after the note it applies to.
-
-To correctly align the @qq{sempre pp} horizontally, so that it is
-aligned as if it were only the \\pp, there are several approaches:
-
-* Simply use @code{\\once\\override DynamicText.X-offset = #-9.2}
-before the note with the dynamics to manually shift it to the correct
+Some dynamic expressions involve additional text, like @qq{sempre
+@strong{pp}}. Since dynamics are usually centered under the note, the
+\\pp would be displayed way after the note it applies to.@*
+To correctly align the @qq{sempre @strong{pp}} horizontally, so that it
+is aligned as if it were only the \\pp, there are several approaches:
+
+@itemize
+@item
+Simply use @code{\\once\\override DynamicText.X-offset = #-9.2} before
+the note with the dynamics to manually shift it to the correct
 position. Drawback: This has to be done manually each time you use that
 dynamic markup...
-
-* Add some padding (@code{#:hspace 7.1}) into the definition of your
+@item
+Add some padding (@code{#:hspace 7.1}) into the definition of your
 custom dynamic mark, so that after lilypond center-aligns it, it is
 already correctly aligned. Drawback: The padding really takes up that
 space and does not allow any other markup or dynamics to be shown in
 that position.
-
-* Shift the dynamic script @code{\\once\\override ... .X-offset = ..}.
+@item
+Shift the dynamic script @code{\\once\\override ... .X-offset = ..}.
 Drawback: @code{\\once\\override} is needed for every invocation!
-
-* Set the dimensions of the additional text to 0 (using
+@item
+Set the dimensions of the additional text to 0 (using
 @code{#:with-dimensions '(0 . 0) '(0 . 0)}). Drawback: To LilyPond
 @qq{sempre} has no extent, so it might put other stuff there and create
 collisions (which are not detected by the collision detection!). Also,
 there seems to be some spacing, so it's not exactly the same alignment
 as without the additional text
-
-* Add an explicit shifting directly inside the scheme function for the
+@item
+Add an explicit shifting directly inside the scheme function for the
 dynamic-script.
-
-* Set an explicit alignment inside the dynamic-script. By default, this
+@item
+Set an explicit alignment inside the dynamic-script. By default, this
 won't have any effect, only if one sets X-offset! Drawback: One needs
 to set @code{DynamicText.X-offset}, which will apply to all dynamic
 texts! Also, it is aligned at the right edge of the additional text,
 not at the center of pp.
-
-
-
+@end itemize
 
 "
   doctitle = "Horizontally aligning custom dynamics (e.g. \"sempre pp\", \"piu f\", \"subito p\")"
--- old/how-to-print-two-rehearsal-marks-above-and-below-the-same-barline-method-1.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/how-to-print-two-rehearsal-marks-above-and-below-the-same-barline-method-1.ly 2019-10-08 12:21:02.597244659 +0200
@@ -13,8 +13,9 @@
 a rehearsal mark it is possible to centre those above and below a bar
 line.
 
-Adding the appropriate 'break visibility' as shown in snippet 1 will
-allow you to position two marks at the end of a line as well.
+Adding the appropriate 'break visibility' as shown in snippet
+@uref{\%22http://lsr.di.unimi.it/LSR/Item?id=1\%22,1} will allow you to
+position two marks at the end of a line as well.
 
 Note: Method 1 is less complex than Method 2 but does not really allow
 for fine tuning of placement of one of the rehearsal marks without
--- old/indicating-cross-staff-chords-with-arpeggio-bracket.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/indicating-cross-staff-chords-with-arpeggio-bracket.ly 2019-10-08 12:21:03.381195276 +0200
@@ -8,8 +8,7 @@
 arpeggios must be set to the bracket shape in the @code{PianoStaff}
 context.
 
-
-(Debussy, Les collines d’Anacapri, m. 65)
+(Debussy, @emph{Les collines d'Anacapri,} m. 65)
 
 "
   doctitle = "Indicating cross-staff chords with arpeggio bracket"
--- old/inserting-a-caesura.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/inserting-a-caesura.ly 2019-10-08 12:21:03.393194520 +0200
@@ -3,8 +3,9 @@
 \header {
   texidoc = "
 Caesura marks can be created by overriding the @code{'text} property of
-the @code{BreathingSign} object. A curved caesura mark is also
-available.
+the @code{BreathingSign} object.
+
+A curved caesura mark is also available.
 
 "
   doctitle = "Inserting a caesura"
--- old/let-tabstaff-print-the-topmost-string-at-bottom.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/let-tabstaff-print-the-topmost-string-at-bottom.ly 2019-10-08 12:21:04.961095753 +0200
@@ -2,10 +2,10 @@
 
 \header {
   texidoc = "
-In tablatures usually the first string is printed topmost. If you want
-to have it at the bottom change the
-@code{stringOneTopmost}-context-property. For a context-wide setting
-this could be done in @code{layout} as well.
+In tablatures usually the first string is printed topmost.@*
+If you want to have it at the bottom change the
+@code{stringOneTopmost}-context-property.@*
+For a context-wide setting this could be done in @code{layout} as well.
 
 "
   doctitle = "Let TabStaff print the topmost string at bottom"
--- old/makam-example.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/makam-example.ly 2019-10-08 12:21:03.409193512 +0200
@@ -3,8 +3,10 @@
 \header {
   texidoc = "
 Makam is a type of melody from Turkey using 1/9th-tone microtonal
-alterations. Consult the initialization file @samp{ly/makam.ly} for
-details of pitch names and alterations.
+alterations.
+
+Consult the initialization file @samp{ly/makam.ly} for details of
+pitch names and alterations.
 
 "
   doctitle = "Makam example"
--- old/making-slurs-with-complex-dash-structure.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/making-slurs-with-complex-dash-structure.ly 2019-10-08 12:21:05.713048386 +0200
@@ -5,15 +5,15 @@
 Slurs can be made with complex dash patterns by defining the
 @code{dash-definition} property.  @code{dash-definition} is a list of
 @code{dash-elements}.  A @code{dash-element} is a list of parameters
-defining the dash behavior for a segment of the slur.
-
-The slur is defined in terms of the bezier parameter t which ranges
-from 0 at the left end of the slur to 1 at the right end of the slur.
-@code{dash-element} is a list @code{(start-t stop-t dash-fraction
-dash-period)}.  The region of the slur from @code{start-t} to
-@code{stop-t} will have a fraction @code{dash-fraction} of each
-@code{dash-period} black.  @code{dash-period} is defined in terms of
-staff spaces.  @code{dash-fraction} is set to 1 for a solid slur.
+defining the dash behavior for a segment of the slur. The slur is
+defined in terms of the bezier parameter t which ranges from 0 at the
+left end of the slur to 1 at the right end of the slur.
+@code{dash-element} is a list
+@code{(start-t stop-t dash-fraction dash-period)}.  The region of the
+slur from @code{start-t} to @code{stop-t} will have a fraction
+@code{dash-fraction} of each @code{dash-period}
+black.  @code{dash-period} is defined in terms of staff
+spaces.  @code{dash-fraction} is set to 1 for a solid slur.
 
 "
   doctitle = "Making slurs with complex dash structure"
--- old/manually-break-figured-bass-extenders-for-only-some-numbers.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/manually-break-figured-bass-extenders-for-only-some-numbers.ly 2019-10-08 12:21:03.541185197 +0200
@@ -5,7 +5,7 @@
 Figured bass often uses extenders to indicate continuation of the
 corresponding step. However, in this case lilypond is in greedy-mode
 and uses extenders whenever possible. To break individual extenders,
-one can simply use a modifier \\! to a number, which breaks any
+one can simply use a modifier @code{\\!} to a number, which breaks any
 extender attributed to that number right before the number.
 
 "
--- old/modifying-default-values-for-articulation-shorthand-notation.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/modifying-default-values-for-articulation-shorthand-notation.ly 2019-10-08 12:21:03.225205102 +0200
@@ -7,9 +7,9 @@
 @code{dashBar}, @code{dashLarger}, @code{dashDot}, and
 @code{dashUnderscore} are assigned default values.  The default values
 for the shorthands can be modified. For example, to associate the
-@code{-+} (@code{dashPlus}) shorthand with the trill symbol instead of
-the default + symbol, assign the value @code{trill} to the variable
-@code{dashPlus}:
+@code{-+} (@code{dashPlus}) shorthand with the @emph{trill} symbol
+instead of the default @emph{+} symbol, assign the value @code{trill}
+to the variable @code{dashPlus}:
 
 "
   doctitle = "Modifying default values for articulation shorthand notation"
--- old/multi-measure-rest-markup.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/multi-measure-rest-markup.ly 2019-10-08 12:21:04.169145641 +0200
@@ -6,12 +6,10 @@
 below it.  Long markups attached to multi-measure rests do not cause
 the measure to expand.  To expand a multi-measure rest to fit the
 markup, use an empty chord with an attached markup before the
-multi-measure rest.
-
-Text attached to a spacer rest in this way is left-aligned to the
-position where the note would be placed in the measure, but if the
-measure length is determined by the length of the text, the text will
-appear to be centered.
+multi-measure rest. Text attached to a spacer rest in this way is
+left-aligned to the position where the note would be placed in the
+measure, but if the measure length is determined by the length of the
+text, the text will appear to be centered.
 
 "
   doctitle = "Multi-measure rest markup"
--- old/nesting-staves.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/nesting-staves.ly 2019-10-08 12:21:02.841229290 +0200
@@ -3,13 +3,13 @@
 \header {
   texidoc = "
 The property @code{systemStartDelimiterHierarchy} can be used to make
-more complex nested staff groups. The command @code{\\set
-StaffGroup.systemStartDelimiterHierarchy} takes an alphabetical list of
-the number of staves produced. Before each staff a system start
-delimiter can be given. It has to be enclosed in brackets and takes as
-much staves as the brackets enclose. Elements in the list can be
-omitted, but the first bracket takes always the complete number of
-staves. The possibilities are @code{SystemStartBar},
+more complex nested staff groups. The command
+@code{\\set StaffGroup.systemStartDelimiterHierarchy} takes an
+alphabetical list of the number of staves produced. Before each staff a
+system start delimiter can be given. It has to be enclosed in brackets
+and takes as much staves as the brackets enclose. Elements in the list
+can be omitted, but the first bracket takes always the complete number
+of staves. The possibilities are @code{SystemStartBar},
 @code{SystemStartBracket}, @code{SystemStartBrace}, and
 @code{SystemStartSquare}.
 
--- old/non-traditional-key-signatures.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/non-traditional-key-signatures.ly 2019-10-08 12:21:01.501313695 +0200
@@ -8,12 +8,13 @@
 To create non-standard key signatures, set this property directly. The
 format of this command is a list:
 
-@code{ \\set Staff.keySignature = #`(((octave . step) . alter) ((octave
-. step) . alter) ...) } where, for each element in the list,
-@code{octave} specifies the octave (0 being the octave from middle C to
-the B above), @code{step} specifies the note within the octave (0 means
-C and 6 means B), and @code{alter} is @code{,SHARP ,FLAT ,DOUBLE-SHARP}
-etc. (Note the leading comma.)
+@code{ \\set Staff.keySignature = #`(((octave . step) . alter) ((octave . step) . alter) ...)}
+
+where, for each element in the list, @code{octave} specifies the octave
+(0 being the octave from middle C to the B above), @code{step}
+specifies the note within the octave (0 means C and 6 means B), and
+@code{alter} is @code{,SHARP ,FLAT ,DOUBLE-SHARP} etc. (Note the
+leading comma.)
 
 Alternatively, for each item in the list, using the more concise format
 @code{(step . alter)} specifies that the same alteration should hold in
--- old/numbers-as-easy-note-heads.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/numbers-as-easy-note-heads.ly 2019-10-08 12:21:05.741046622 +0200
@@ -3,8 +3,8 @@
 \header {
   texidoc = "
 Easy notation note heads use the @code{note-names} property of the
-@code{NoteHead} object to determine what appears inside the note head.
-By overriding this property, it is possible to print numbers
+@code{NoteHead} object to determine what appears inside the note
+head.  By overriding this property, it is possible to print numbers
 representing the scale-degree.
 
 A simple engraver can be created to do this for every note head object
--- old/of-the-ubiquity-of-markup-objects.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/of-the-ubiquity-of-markup-objects.ly 2019-10-08 12:21:06.349008325 +0200
@@ -8,20 +8,21 @@
 
 As such, markup blocks may be used:
 
-* in any TextScript object (attached to notes with @code{-}, @code{^}
-or @code{_}),
-
-* any RehearsalMark introduced with the @code{\\mark} keyword, or other
+@itemize
+@item
+in any TextScript object (attached to notes with @code{-}, @code{^} or
+@code{_}),
+@item
+any RehearsalMark introduced with the @code{\\mark} keyword, or other
 similar objects such as MetronomeMark introduced with @code{\\tempo},
-
-* as standalone markup blocks, entered at the top level outside of any
+@item
+as standalone markup blocks, entered at the top level outside of any
 @code{\\score} block,
-
-* in any definition inside the @code{\\header} block (e.g. title,
+@item
+in any definition inside the @code{\\header} block (e.g. title,
 subtitle, composer) or in some variables defined inside the
 @code{\\paper} block such as @code{evenHeaderMarkup} for page numbers.
-
-
+@end itemize
 
 @code{\\markup} may additionally be used for lyrics, in chord names,
 and as dynamics.  In fact, it is possible to use @code{\\markup} to
--- old/outputting-the-version-number.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/outputting-the-version-number.ly 2019-10-08 12:21:00.249392557 +0200
@@ -2,11 +2,10 @@
 
 \header {
   texidoc = "
-By putting the output of
-    @code{lilypond-version} into a lyric, it is possible to print the
-    version number of LilyPond in a score, or in a document generated
-    with @code{lilypond-book}.  Another possibility is to append the
-    version number to the doc-string, in this manner:
+By putting the output of @code{lilypond-version} into a lyric, it is
+possible to print the version number of LilyPond in a score, or in a
+document generated with @code{lilypond-book}.  Another possibility is
+to append the version number to the doc-string, in this manner:
 
 "
   doctitle = "Outputting the version number"
--- old/overriding-articulations-of-destinct-type.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/overriding-articulations-of-destinct-type.ly 2019-10-08 12:21:06.209017143 +0200
@@ -2,11 +2,11 @@
 
 \header {
   texidoc = "
-Sometimes you may want to affect a single articulation-type. Although
-it is always possible to use @code{\\tweak}, it might become tedious to
-do so for every single sign of a whole score. The following shows how
-to tweak articulations with a list of custom-settings. One use-case
-might be to create a style-sheet.
+Sometimes you may want to affect a single articulation-type.@*
+Although it is always possible to use @code{\\tweak}, it might become
+tedious to do so for every single sign of a whole score.@*
+The following shows how to tweak articulations with a list of
+custom-settings. One use-case might be to create a style-sheet.
 
 With 2.16.2 it is possible to put the proposed function,
 @code{\\customScripts}, into a @code{\\layout}-block.
--- old/partcombine-and-autobeamoff.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/partcombine-and-autobeamoff.ly 2019-10-08 12:21:05.069088951 +0200
@@ -18,19 +15,15 @@
 @code{\\partcombine} apparently works with 3 voices -- stem up single,
 stem down single, stem up combined.
 
-
 An @code{\\autoBeamOff} call in the first argument to partcombine will
 apply to the voice that is active at the time the call is processed,
 either stem up single or stem up combined. An @code{\\autoBeamOff} call
-in the second argument will apply to the voice that is stem down single.
-
+in the second argument will apply to the voice that is stem down
+single.
 
 In order to use @code{\\autoBeamOff} to stop all autobeaming when used
-with @code{\\partcombine}, it will be necessary to use three calls to
-@code{\\autoBeamOff}.
-
-
-
+with @code{\\partcombine}, it will be necessary to use @emph{three}
+calls to @code{\\autoBeamOff}.
 
 "
   doctitle = "Partcombine and autoBeamOff"
--- old/placement-of-right-hand-fingerings.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/placement-of-right-hand-fingerings.ly 2019-10-08 12:21:03.681176379 +0200
@@ -4,7 +4,8 @@
   texidoc = "
 It is possible to exercise greater control over the placement of
 right-hand fingerings by setting a specific property, as demonstrated
-in the following example. Note: you must use a chord construct
+in the following example. Note: you must use a chord construct <>, even
+if it is only a single note.
 
 "
   doctitle = "Placement of right-hand fingerings"
--- old/positioning-multi-measure-rests.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/positioning-multi-measure-rests.ly 2019-10-08 12:21:02.349260281 +0200
@@ -6,8 +6,9 @@
 staff position of a multi-measure rest symbol of either form by
 attaching it to a note.  However, in polyphonic music multi-measure
 rests in odd-numbered and even-numbered voices are vertically
-separated. The positioning of multi-measure rests can be controlled as
-follows:
+separated.
+
+The positioning of multi-measure rests can be controlled as follows:
 
 "
   doctitle = "Positioning multi-measure rests"
--- old/positioning-segno-and-coda-with-line-break.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/positioning-segno-and-coda-with-line-break.ly 2019-10-08 12:21:00.621369125 +0200
@@ -2,8 +2,8 @@
 
 \header {
   texidoc = "
-If you want to place an exiting segno sign and add text like @qq{D.S.
-al Coda} next to it where usually the staff lines are you can use this
+If you want to place an exiting segno sign and add text like @qq{D.S. al
+Coda} next to it where usually the staff lines are you can use this
 snippet. The coda will resume in a new line. There is a variation
 documented in this snippet, where the coda will remain on the same
 line.
--- old/printing-metronome-and-rehearsal-marks-below-the-staff.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/printing-metronome-and-rehearsal-marks-below-the-staff.ly 2019-10-08 12:21:02.857228282 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-By default, metronome and rehearsal marks are printed above the staff.
-To place them below the staff simply set the @code{direction} property
-of @code{MetronomeMark} or @code{RehearsalMark} appropriately.
+By default, metronome and rehearsal marks are printed above the
+staff.  To place them below the staff simply set the @code{direction}
+property of @code{MetronomeMark} or @code{RehearsalMark} appropriately.
 
 "
   doctitle = "Printing metronome and rehearsal marks below the staff"
--- old/printing-music-with-different-time-signatures.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/printing-music-with-different-time-signatures.ly 2019-10-08 12:21:01.829293034 +0200
@@ -3,11 +3,12 @@
 \header {
   texidoc = "
 In the following snippet, two parts have a completely different time
-signature, yet remain synchronized. The bar lines can no longer be
-printed at the @code{Score} level; to allow independent bar lines in
-each part, the @code{Default_barline_engraver} and
-@code{Timing_translator} are moved from the @code{Score} context to the
-@code{Staff} context.
+signature, yet remain synchronized.
+
+The bar lines can no longer be printed at the @code{Score} level; to
+allow independent bar lines in each part, the
+@code{Default_barline_engraver} and @code{Timing_translator} are moved
+from the @code{Score} context to the @code{Staff} context.
 
 If bar numbers are required, the @code{Bar_number_engraver} should also
 be moved, since it relies on properties set by the
--- old/putting-lyrics-inside-the-staff.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/putting-lyrics-inside-the-staff.ly 2019-10-08 12:21:01.125337379 +0200
@@ -3,9 +3,10 @@
 \header {
   texidoc = "
 Lyrics can be moved vertically to place them inside the staff.  The
-lyrics are moved with @code{\\override LyricText.extra-offset = #'(0 .
-dy)} and there are similar commands to move the extenders and hyphens.
-The offset needed is established with trial and error.
+lyrics are moved with
+@code{\\override LyricText.extra-offset = #'(0 . dy)} and there are
+similar commands to move the extenders and hyphens.  The offset needed
+is established with trial and error.
 
 "
   doctitle = "Putting lyrics inside the staff"
--- old/quoting-another-voice.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/quoting-another-voice.ly 2019-10-08 12:21:02.717237101 +0200
@@ -3,15 +3,16 @@
 \header {
   texidoc = "
 The @code{quotedEventTypes} property determines the music event types
-which should be quoted.  The default value is @code{(note-event
-rest-event tie-event beam-event tuplet-span-event)}, which means that
-only the notes, rests, ties, beams and tuplets of the quoted voice will
-appear in the @code{\\quoteDuring} expression. In the following
-example, a 16th rest is not quoted since @code{rest-event} is not in
-@code{quotedEventTypes}.
+which should be quoted.  The default value is
+@code{(note-event rest-event tie-event beam-event tuplet-span-event)},
+which means that only the notes, rests, ties, beams and tuplets of the
+quoted voice will appear in the @code{\\quoteDuring} expression.
 
-For a list of event types, consult the @qq{Music classes} section of
-the Internals Reference.
+In the following example, a 16th rest is not quoted since
+@code{rest-event} is not in @code{quotedEventTypes}.
+
+For a list of event types, consult the @qq{Music classes} section of the
+Internals Reference.
 
 "
   doctitle = "Quoting another voice"
--- old/removing-brace-on-first-line-of-piano-score.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/removing-brace-on-first-line-of-piano-score.ly 2019-10-08 12:21:06.221016387 +0200
@@ -3,8 +3,10 @@
 \header {
   texidoc = "
 This snippet removes the first brace from a @code{PianoStaff} or a
-@code{GrandStaff}. It may be useful when cutting and pasting the
-engraved image into existing music.
+@code{GrandStaff}.
+
+It may be useful when cutting and pasting the engraved image into
+existing music.
 
 It uses @code{\\alterBroken}.
 
--- old/rhythmic-slashes.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/rhythmic-slashes.ly 2019-10-08 12:21:02.189270358 +0200
@@ -6,13 +6,16 @@
 instead only @qq{rhythmic patterns} and chords above the measures are
 notated giving the structure of a song. Such a feature is for example
 useful while creating/transcribing the structure of a song and also
-when sharing lead sheets with guitarists or jazz musicians. The
-standard support for this using @code{\\repeat percent} is unsuitable
-here since the first beat has to be an ordinary note or rest. This
-example shows two solutions to this problem, by redefining ordinary
-rests to be printed as slashes. (If the duration of each beat is not a
-quarter note, replace the @code{r4} in the definitions with a rest of
-the appropriate duration).
+when sharing lead sheets with guitarists or jazz musicians.
+
+The standard support for this using @code{\\repeat percent} is
+unsuitable here since the first beat has to be an ordinary note or
+rest.
+
+This example shows two solutions to this problem, by redefining
+ordinary rests to be printed as slashes. (If the duration of each beat
+is not a quarter note, replace the @code{r4} in the definitions with a
+rest of the appropriate duration).
 
 "
   doctitle = "Rhythmic slashes"
--- old/several-procedures-to-print-different-bar-numbering-rules.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/several-procedures-to-print-different-bar-numbering-rules.ly 2019-10-08 12:21:06.181018907 +0200
@@ -2,23 +2,23 @@
 
 \header {
   texidoc = "
-sometimes you would like to emphasize certain bar numbers... here are
-some procedures to do so:
-
-
-* @code{#all-bar-numbers-visible}
-
-* @code{#(every-nth-bar-number-visible n)}
-
-* @code{#(modulo-bar-number-visible n m)} (needs version 2.16 or
-higher:)
-
-
-* @code{#first-bar-number-invisible-save-broken-bars}
-
-* @code{#first-bar-number-invisible-and-no-parenthesized-bar-numbers}
+sometimes you would like to emphasize certain bar numbers...
 
+here are some procedures to do so:
 
+@itemize
+@item
+@code{#all-bar-numbers-visible}
+@item
+@code{#(every-nth-bar-number-visible n)}
+@item
+@code{#(modulo-bar-number-visible n m)}
+(needs version 2.16 or higher:)
+@item
+@code{#first-bar-number-invisible-save-broken-bars}
+@item
+@code{#first-bar-number-invisible-and-no-parenthesized-bar-numbers}
+@end itemize
 
 "
   doctitle = "several procedures to print different bar numbering rules"
--- old/showing-the-same-articulation-above-and-below-a-note-or-chord.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/showing-the-same-articulation-above-and-below-a-note-or-chord.ly 2019-10-08 12:21:02.557247178 +0200
@@ -4,17 +4,18 @@
   texidoc = "
 By default, LilyPond does not allow the same articulation (e.g., an
 accent, a fermata, a flageolet, etc.) to be displayed above and below a
-note. For example, c4_\\fermata^\\fermata will only show a fermata
-below. The fermata above will simply be ignored. However, one can stick
-scripts (just like fingerings) inside a chord, which means it is
-possible to have as many articulations as desired. This approach has
-the advantage that it ignores the stem and positions the articulation
-relative to the note head. This can be seen in the case of the
-flageolets in the snippet. To mimic the behaviour of scripts outside a
-chord, 'add-stem-support would be required. So, the solution is to
-write the note as a chord and add the articulations inside the <...>.
-The direction will always be above, but one can tweak this via a
-\\tweak: @code{<c-\\tweak direction #DOWN-\\fermata^\\fermata>}
+note. For example, @code{c4_\\fermata^\\fermata} will only show a
+fermata below. The fermata above will simply be ignored.@*
+However, one can stick scripts (just like fingerings) inside a chord,
+which means it is possible to have as many articulations as desired.
+This approach has the advantage that it ignores the stem and positions
+the articulation relative to the note head. This can be seen in the
+case of the flageolets in the snippet. To mimic the behaviour of
+scripts outside a chord, 'add-stem-support would be required.@*
+So, the solution is to write the note as a chord and add the
+articulations inside the @code{<...>}. The direction will always be
+above, but one can tweak this via a \\tweak:
+@code{<c-\\tweak direction #DOWN-\\fermata^\\fermata>}
 
 "
   doctitle = "Showing the same articulation above and below a note or chord"
--- old/skips-in-lyric-mode-2.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/skips-in-lyric-mode-2.ly 2019-10-08 12:21:00.801357787 +0200
@@ -4,7 +4,9 @@
   texidoc = "
 Although @code{s} skips cannot be used in @code{\\lyricmode} (it is
 taken to be a literal @qq{s}, not a space), double quotes (@code{\"\"})
-or underscores (@code{_}) are available.So for example:
+or underscores (@code{_}) are available.
+
+So for example:
 
 "
   doctitle = "Skips in lyric mode (2)"
--- old/stemlets.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/stemlets.ly 2019-10-08 12:21:03.777170332 +0200
@@ -2,18 +2,16 @@
 
 \header {
   texidoc = "
-In some notational conventions beams are allowed to extend over rests.
-Depending on preference, these beams may drop 'stemlets' to help the
-eye appreciate the rhythm better, and in some modern music the rest
-itself is omitted and only the stemlet remains.
-
+In some notational conventions beams are allowed to extend over
+rests.  Depending on preference, these beams may drop 'stemlets' to
+help the eye appreciate the rhythm better, and in some modern music the
+rest itself is omitted and only the stemlet remains.
 
 This snippet shows a progression from traditional notation, to beams
 over the rest, to stemlets over the rest, to stemlets alone.  Stemlets
 are generated by overriding the @code{'stemlet-length} property of
-@code{Stem}, while rests are hidden by setting @code{'transparent =
-##t}.
-
+@code{Stem}, while rests are hidden by setting
+@code{'transparent = ##t}.
 
 Some @code{\\markup} elements are included in the source to highlight
 the different notations.
--- old/string-quartet-template-with-separate-parts.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/string-quartet-template-with-separate-parts.ly 2019-10-08 12:21:02.389257761 +0200
@@ -2,18 +2,17 @@
 
 \header {
   texidoc = "
-The @qq{String quartet template} snippet produces a nice string
-quartet, but what if you needed to print parts? This new template
-demonstrates how to use the @code{\\tag} feature to easily split a
-piece into individual parts.
+The @qq{String quartet template} snippet produces a nice string quartet,
+but what if you needed to print parts? This new template demonstrates
+how to use the @code{\\tag} feature to easily split a piece into
+individual parts.
 
 You need to split this template into separate files; the filenames are
 contained in comments at the beginning of each file. @code{piece.ly}
-contains all the music definitions. The other files – @code{score.ly},
-@code{vn1.ly}, @code{vn2.ly}, @code{vla.ly}, and @code{vlc.ly} –
+contains all the music definitions. The other files -- @code{score.ly},
+@code{vn1.ly}, @code{vn2.ly}, @code{vla.ly}, and @code{vlc.ly} --
 produce the appropriate part.
 
-
 Do not forget to remove specified comments when using separate files!
 
 "
--- old/table-of-contents.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/table-of-contents.ly 2019-10-08 12:21:04.281138586 +0200
@@ -2,9 +2,9 @@
 
 \header {
   texidoc = "
-A table of contents is included using @code{\\markuplist
-\\table-of-contents}.  The TOC items are added with the
-@code{\\tocItem} command.
+A table of contents is included using
+@code{\\markuplist \\table-of-contents}.  The TOC items are added with
+the @code{\\tocItem} command.
 
 "
   doctitle = "Table of contents"
--- old/time-signature-printing-only-the-numerator-as-a-number-instead-of-the-fraction.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/time-signature-printing-only-the-numerator-as-a-number-instead-of-the-fraction.ly 2019-10-08 12:21:03.625179906 +0200
@@ -5,10 +5,10 @@
 Sometimes, a time signature should not print the whole fraction (e.g.
 7/4), but only the numerator (7 in this case). This can be easily done
 by using @code{\\override Staff.TimeSignature.style = #'single-digit}
-to change the style permanently. By using @code{\\revert
-Staff.TimeSignature.style}, this setting can be reversed. To apply the
-single-digit style to only one time signature, use the
-@code{\\override} command and prefix it with a @code{\\once}.
+to change the style permanently. By using
+@code{\\revert Staff.TimeSignature.style}, this setting can be
+reversed. To apply the single-digit style to only one time signature,
+use the @code{\\override} command and prefix it with a @code{\\once}.
 
 "
   doctitle = "Time signature printing only the numerator as a number (instead of the fraction)"
--- old/tweaking-clef-properties.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/tweaking-clef-properties.ly 2019-10-08 12:21:00.717363078 +0200
@@ -5,9 +5,9 @@
 Changing the Clef glyph, its position, or the ottavation does not
 change the position of subsequent notes on the staff.  To get key
 signatures on their correct staff lines @code{middleCClefPosition} must
-also be specified, with positive or negative values moving @code{middle
-C} up or down respectively, relative to the staff's center line.
-
+also be specified, with positive or negative values moving
+@code{middle C} up or down respectively, relative to the staff's center
+line.
 
 For example, @code{\\clef \"treble_8\"} is equivalent to setting the
 @code{clefGlyph}, @code{clefPosition} (the vertical position of the
--- old/tweaking-grace-layout-within-music.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/tweaking-grace-layout-within-music.ly 2019-10-08 12:21:01.373321757 +0200
@@ -4,9 +4,11 @@
   texidoc = "
 The layout of grace expressions can be changed throughout the music
 using the functions @code{add-grace-property} and
-@code{remove-grace-property}. The following example undefines the
-@code{Stem} direction for this grace, so that stems do not always point
-up, and changes the default note heads to crosses.
+@code{remove-grace-property}.
+
+The following example undefines the @code{Stem} direction for this
+grace, so that stems do not always point up, and changes the default
+note heads to crosses.
 
 "
   doctitle = "Tweaking grace layout within music"
--- old/two--partcombine-pairs-on-one-staff.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/two--partcombine-pairs-on-one-staff.ly 2019-10-08 12:21:04.601118429 +0200
@@ -4,16 +4,17 @@
   texidoc = "
 The @code{\\partcombine} function takes two music expressions each
 containing a part, and distributes them among four @code{Voice}s named
-@qq{two} @qq{one} @qq{solo} and @qq{chords} depending on when and how
-the parts merged into a common voice.   The voices output from
+@qq{two} @qq{one} @qq{solo} and @qq{chords} depending on when and how the
+parts merged into a common voice.   The voices output from
 @code{\\partcombine} can have their layout properties adjusted in the
 usual way.  Here we define extensions of @code{\\partcombine} to make
 it easier to put four voices on a staff.
 
-soprano = @{ d'4 | cis'  b  e'  d'8 cis' | cis'2 b @} alto = @{ fis4 |
-e8 fis gis ais b4 b | b ais fis2 @} tenor = @{ a8 b | cis' dis' e'4 b8
-cis' d'4 | gis cis' dis'2 @} bass = @{ fis8 gis | a4 gis g fis | eis
-fis b,2 @}
+@verbatim
+soprano = { d'4 | cis'  b  e'  d'8 cis' | cis'2 b }
+alto = { fis4 | e8 fis gis ais b4 b | b ais fis2 }
+tenor = { a8 b | cis' dis' e'4 b8 cis' d'4 | gis cis' dis'2 }
+bass = { fis8 gis | a4 gis g fis | eis fis b,2 }
 
 \\new Staff <<
   \\key b\\minor
@@ -21,7 +22,9 @@
   \\partial 4
   \\transpose b b'  
   \\partcombineUp \\soprano \\alto
-  \\partcombineDown \\tenor \\bass >>
+  \\partcombineDown \\tenor \\bass
+>>
+@end verbatim
 
 "
   doctitle = "Two \\partcombine pairs on one staff"
--- old/using-an-extra-voice-for-breaks.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/using-an-extra-voice-for-breaks.ly 2019-10-08 12:21:01.941285980 +0200
@@ -5,11 +5,9 @@
 Often it is easier to manage line and page-breaking information by
 keeping it separate from the music by introducing an extra voice
 containing only skips along with the @code{\\break}, @code{pageBreak}
-and other layout information.
-
-This pattern becomes especially helpful when overriding
-@code{line-break-system-details} and the other useful but long
-properties of @code{NonMusicalPaperColumnGrob}.
+and other layout information. This pattern becomes especially helpful
+when overriding @code{line-break-system-details} and the other useful
+but long properties of @code{NonMusicalPaperColumnGrob}.
 
 "
   doctitle = "Using an extra voice for breaks"
--- old/using-a-tick-as-the-breath-mark-symbol.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/using-a-tick-as-the-breath-mark-symbol.ly 2019-10-08 12:21:01.953285224 +0200
@@ -2,11 +2,11 @@
 
 \header {
   texidoc = "
-Vocal and wind music frequently uses a tick mark as a breathing sign.
-This indicates a breath that subtracts a little time from the previous
-note rather than causing a short pause, which is indicated by the comma
-breath mark.  The mark can be moved up a little to take it away from
-the stave.
+Vocal and wind music frequently uses a tick mark as a breathing
+sign.  This indicates a breath that subtracts a little time from the
+previous note rather than causing a short pause, which is indicated by
+the comma breath mark.  The mark can be moved up a little to take it
+away from the stave.
 
 "
   doctitle = "Using a tick as the breath mark symbol"
--- old/using-double-slurs-for-legato-chords.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/using-double-slurs-for-legato-chords.ly 2019-10-08 12:21:02.477252218 +0200
@@ -2,8 +2,8 @@
 
 \header {
   texidoc = "
-Some composers write two slurs when they want legato chords.  This can
-be achieved by setting @code{doubleSlurs}.
+Some composers write two @emph{slurs} when they want legato
+chords.  This can be achieved by setting @code{doubleSlurs}.
 
 "
   doctitle = "Using double slurs for legato chords"
--- old/using-ly-grob-object-to-access-grobs-with--tweak.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/using-ly-grob-object-to-access-grobs-with--tweak.ly 2019-10-08 12:21:01.581308656 +0200
@@ -2,7 +2,7 @@
 
 \header {
   texidoc = "
-Some grobs can be accessed “laterally” from within another grob’s
+Some grobs can be accessed “laterally” from within another grob's
 callback. These are usually listed as “layout objects” in the “Internal
 properties” section of a grob-interface. The function ly:grob-object is
 used to access these grobs.
--- old/using-postscript-to-generate-special-note-head-shapes.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/using-postscript-to-generate-special-note-head-shapes.ly 2019-10-08 12:21:03.849165797 +0200
@@ -3,8 +3,9 @@
 \header {
   texidoc = "
 When a note head with a special shape cannot easily be generated with
-graphic markup, PostScript code can be used to generate the shape.
-This example shows how a parallelogram-shaped note head is generated.
+graphic markup, PostScript code can be used to generate the
+shape.  This example shows how a parallelogram-shaped note head is
+generated.
 
 "
   doctitle = "Using PostScript to generate special note head shapes"
--- old/using-tags-to-produce-mensural-and-modern-music-from-the-same-source.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/using-tags-to-produce-mensural-and-modern-music-from-the-same-source.ly 2019-10-08 12:21:05.137084667 +0200
@@ -8,8 +8,8 @@
 original, but with modern rests in the standard staff position.  Tags
 are used to produce different types of bar line at the end of the
 music, but tags can also be used where other differences are needed:
-for example using @qq{whole measure rests} (R1, R\\breve etc.) in
-modern music, but normal rests (r1, r\\breve, etc.) in the mensural
+for example using @qq{whole measure rests} (R1, R\\breve etc.) in modern
+music, but normal rests (r1, r\\breve, etc.) in the mensural
 version.  Note that converting mensural music to its modern equivalent
 is usually referred to as @code{transcription}.
 
--- old/using-the--tweak-command-to-tweak-individual-grobs.ly 2019-10-07 03:29:42.000000000 +0200
+++ new/using-the--tweak-command-to-tweak-individual-grobs.ly 2019-10-08 12:21:01.461316214 +0200
@@ -2,8 +2,8 @@
 
 \header {
   texidoc = "
-With the @code{\\tweak} command, every grob can be tuned directly.
-Here are some examples of available tweaks.
+With the @code{\\tweak} command, every grob can be tuned
+directly.  Here are some examples of available tweaks.
 
 "
   doctitle = "Using the \\tweak command to tweak individual grobs"
--- old/using-the-whiteout-property.ly 2019-10-07 03:29:44.000000000 +0200
+++ new/using-the-whiteout-property.ly 2019-10-08 12:21:05.985031253 +0200
@@ -7,11 +7,9 @@
 appearance of collisions in complex situations when repositioning
 objects is impractical.  It is necessary to explicitly set the
 @code{layer} property to control which objects are masked by the white
-background.
-
-In this example the collision of the tie with the time signature is
-improved by masking out the part of the tie that crosses the time
-signature by setting the @code{whiteout} property of
+background. In this example the collision of the tie with the time
+signature is improved by masking out the part of the tie that crosses
+the time signature by setting the @code{whiteout} property of
 @code{TimeSignature}. To do this @code{TimeSignature} is moved to a
 layer above @code{Tie}, which is left in the default layer of 1, and
 @code{StaffSymbol} is moved to a layer above @code{TimeSignature} so it
--- old/utf-8.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/utf-8.ly 2019-10-08 12:21:04.225142113 +0200
@@ -3,9 +3,9 @@
 \header {
   texidoc = "
 Various scripts may be used for texts (like titles and lyrics) by
-entering them in UTF-8 encoding, and using a Pango based backend.
-Depending on the fonts installed, this fragment will render Bulgarian
-(Cyrillic), Hebrew, Japanese and Portuguese.
+entering them in UTF-8 encoding, and using a Pango based
+backend.  Depending on the fonts installed, this fragment will render
+Bulgarian (Cyrillic), Hebrew, Japanese and Portuguese.
 
 "
   doctitle = "UTF-8"
--- old/vertically-aligned-dynamics-and-textscripts.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/vertically-aligned-dynamics-and-textscripts.ly 2019-10-08 12:21:02.761234329 +0200
@@ -5,10 +5,9 @@
 All @code{DynamicLineSpanner} objects (hairpins and dynamic texts) are
 placed with their reference line at least @code{'staff-padding} from
 the staff, unless other notation forces them to be farther. Setting
-@code{'staff-padding} to a sufficiently large value aligns the dynamics.
-
-The same idea, together with @code{\\textLengthOn}, is used to align
-the text scripts along their baseline.
+@code{'staff-padding} to a sufficiently large value aligns the
+dynamics. The same idea, together with @code{\\textLengthOn}, is used
+to align the text scripts along their baseline.
 
 "
   doctitle = "Vertically aligned dynamics and textscripts"
--- old/vocal-ensemble-template-with-automatic-piano-reduction.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/vocal-ensemble-template-with-automatic-piano-reduction.ly 2019-10-08 12:21:02.405256753 +0200
@@ -4,7 +4,7 @@
   texidoc = "
 This template adds an automatic piano reduction to the standard SATB
 vocal score demonstrated in @qq{Vocal ensemble template}. This
-demonstrates one of the strengths of LilyPond – you can use a music
+demonstrates one of the strengths of LilyPond -- you can use a music
 definition more than once. If any changes are made to the vocal notes
 (say, @code{tenorMusic}), then the changes will also apply to the piano
 reduction.
--- old/volta-text-markup-using-repeatcommands.ly 2019-10-07 03:29:43.000000000 +0200
+++ new/volta-text-markup-using-repeatcommands.ly 2019-10-08 12:21:02.021280940 +0200
@@ -6,12 +6,11 @@
 context property @code{repeatCommands} must be used in cases where the
 volta text needs more advanced formatting with @code{\\markup}.
 
-
 Since @code{repeatCommands} takes a list, the simplest method of
 including markup is to use an identifier for the text and embed it in
-the command list using the Scheme syntax @code{#(list (list 'volta
-textIdentifier))}. Start- and end-repeat commands can be added as
-separate list elements:
+the command list using the Scheme syntax
+@code{#(list (list 'volta textIdentifier))}. Start- and end-repeat
+commands can be added as separate list elements:
 
 "
   doctitle = "Volta text markup using repeatCommands"

adding-beams,-slurs,-ties-etc.-when-using-tuplet-and-non-tuplet-rhythms.ly

brackets etc., which might sometimes have to be interleaved.

For example, when entering a manual beam, the left square bracket has
to be placed after @emph{after} the starting note and its duration, not
before. Similarly, the right square bracket should directly follow the
note which is to be at the end of the requested beaming, even if this
note happens to be inside a tuplet section.
------------
adjusting-the-shape-of-falls-and-doits.ly

\header {
  texidoc = "
The @code{shortest-duration-space} property may be tweaked to adjust
the shape of falls @emph{falls} and doits. @emph{doits}.

"
  doctitle = "Adjusting the shape of falls and doits"
------------
arabic-improvisation.ly


\header {
  texidoc = "
For improvisations or taqasim @emph{taqasim} which are temporarily free, the
time signature can be omitted and @code{\\cadenzaOn} can be
used.  Adjusting the accidental style might be required, since the
absence of bar lines will cause the accidental to be marked only
once.  Here is an example of what could be the start of a hijaz @emph{hijaz}
improvisation:

"
------------
beams-across-line-breaks.ly


\header {
  texidoc = "
Line breaks are normally forbidden when beams cross bar lines. lines.@*
This behavior can be changed as shown:

"
------------
changing-text-and-spanner-styles-for-text-dynamics.ly


\header {
  texidoc = "
The text used for crescendos @emph{crescendos} and decrescendos @emph{decrescendos} can be
changed by modifying the context properties @code{crescendoText} and
@code{decrescendoText}.

------------
changing-the-tuplet-number.ly

  texidoc = "
By default, only the numerator of the tuplet number is printed over the
tuplet bracket, i.e., the numerator of the argument to the
@code{\\tuplet} command. Alternatively, num:den @emph{num}:@emph{den} of the
tuplet number may be printed, or the tuplet number may be suppressed
altogether.

------------
chord-names-alternative.ly


Here are shown chords following Ignatzek (pp. 17-18, 1995), used by
default since LilyPond 1.7.20, compared with an alternative Jazz chord
notation and Harald Banter’s Banter's (1987) notation.  A smaller font is used
in the latter case, as these tend to be overly verbose.

This mirrors the mechanism originally used in early LilyPond versions
------------
chords-with-stretched-fingering-for-fretboards-and-tabvoice.ly


\header {
  texidoc = "
Sometimes chords with a stretched fingering are required. required.@*
If not otherwise specified the context-property
@code{maximumFretStretch} is set to @code{4}, though. Resulting in a
warning about \"No string for pitch ...\" and the note is omitted. omitted.@*
You may set @code{maximumFretStretch} to an approppriate value or
explecitely assign string-numbers to all notes of a chord.

------------
clip-systems.ly

This file needs to be run separately with @code{-dclip-systems}; the
snippets page may not adequately show the results. The result will be
files named
@samp{base-from-start-to-end[-count].eps}. @samp{@emph{base}-from-@emph{start}-to-@emph{end}[-@emph{count}].eps}.

If system starts and ends are included, they include extents of the
System grob, e.g., instrument names.
------------
controlling-the-vertical-ordering-of-scripts.ly

The vertical ordering of scripts is controlled with the
@code{'script-priority} property. The lower this number, the closer it
will be put to the note. In this example, the @code{TextScript} (the
sharp @emph{sharp} symbol) first has the lowest priority, so it is put lowest
in the first example. In the second, the prall trill @emph{prall trill} (the
@code{Script}) has the lowest, so it is on the inside. When two objects
have the same priority, the order in which they are entered determines
which one comes first.
------------
creating-arpeggios-across-notes-in-different-voices.ly


\header {
  texidoc = "
An arpeggio @emph{arpeggio} can be drawn across notes in different voices on the
same staff if the @code{Span_arpeggio_engraver} is added to the
@code{Staff} context:

------------
creating-a-sequence-of-notes-on-various-pitches.ly

at different pitches, the following music function may prove
useful.  It takes a note, of which only the pitch is used.  

This example creates the rhythm used throughout Mars, @emph{Mars}, from
Gustav Holst's The
Planets. @emph{The Planets}.

"
  doctitle = "Creating a sequence of notes on various pitches"
------------
creating-cross-staff-arpeggios-in-a-piano-staff.ly


\header {
  texidoc = "
In a @code{PianoStaff}, it is possible to let an arpeggio @emph{arpeggio} cross
between the staves by setting the property
@code{PianoStaff.connectArpeggios}.

------------
creating-cross-staff-arpeggios-in-other-contexts.ly


\header {
  texidoc = "
Cross-staff arpeggios @emph{arpeggios} can be created in contexts other than
@code{GrandStaff}, @code{PianoStaff} and @code{StaffGroup} if the
@code{Span_arpeggio_engraver} is included in the @code{Score} context.

------------
customize-drumpitchnames,-drumstyletable-and-drumpitchtable-in-layout-and-midi.ly

\header {
  texidoc = "
If you want to use customized drum-pitch-names for an own drum-style
with proper output for layout and @emph{and} midi, follow the steps as
demonstrated in the code below. In short:

* @itemize
@item
define the names *
@item
define the appearence *
@item
tell LilyPond to use it for layout *
@item
assign pitches to the names *
@item
tell LilyPond to use them for midi
@end itemize

"
  doctitle = "Customize drumPitchNames, drumStyleTable and drumPitchTable in layout and midi"
------------
defining-predefined-fretboards-for-other-instruments.ly

Predefined fret diagrams can be added for new instruments in addition
to the standards used for guitar.  This file shows how this is done by
defining a new string-tuning and a few predefined fretboards for the
Venezuelan cuatro. @emph{cuatro}.

This file also shows how fingerings can be included in the chords used
as reference points for the chord lookup, and displayed in the fret
------------
displaying-a-whole-grandstaff-system-if-only-one-of-its-staves-is-alive.ly

silent for a while and their staves can be removed for that time (with
@code{\\removeEmptyStaves}).

When they play again it is often preferred to show the staves of all
@emph{all instruments of such a group. group}. this can be done adding the
@code{Keep_alive_together_engraver} in the grouper (e.g. a GrandStaff
or a StaffGroup)

------------
displaying-grob-ancestry.ly

\header {
  texidoc = "
When working with grob callbacks, it can be helpful to understand a
grob’s grob's ancestry. Most grobs have parents which influence the
positioning of the grob. X- and Y-parents influence the horizontal and
vertical positions for the grob, respectively. Additionally, each
parent may have parents of its own.

Unfortunately, there are several aspects of a grob’s grob's ancestry that can
lead to confusion:

* The types of parents a grob has may depend on context.
--
and grandparent (twice on the X-side) to a @code{VerticalAlignment}
grob.

This macro prints (to the console) a textual representation of a grob’s grob's
ancestry.

When called this way:
--

The following output is generated:

@code{NoteHead X,Y: NoteColumn      X: PaperColumn         X,Y: System      Y: VerticalAxisGroup         X: NonMusicalPaperColumn            X,Y: System         Y: VerticalAlignment            X: NonMusicalPaperColumn               X,Y: System            Y: System} System}@*

"
  doctitle = "Displaying grob ancestry"
------------
engraving-tremolos-with-floating-beams.ly

typeset with all beams touching the stems.  Certain engraving styles
typeset some of these beams as centered floating beams that do not
touch the stems.  The number of floating beams in this type of tremolo
is controlled with the @code{'gap-count } @code{'gap-count} property of the @code{Beam}
object, and the size of the gaps between beams and stems is set with
the @code{'gap} property.

------------
flamenco-notation.ly

  texidoc = "
For flamenco guitar, special notation is used:

* @itemize
@item
a golpe @emph{golpe} symbol to indicate a slap on the guitar body with the
nail of the ring finger *
@item
an arrow to indicate (the direction of) strokes *
@item
different letters for fingering (@qq{p}: thumb, @qq{i}: index finger,
@qq{m}: middle finger, @qq{a}: ring finger and @qq{x}: little finger) *
@item
3- and 4-finger rasgueados; @emph{rasgueados}; stroke upwards with all fingers,
ending with an up- and down using the index finger * abanicos:
@item
@emph{abanicos}: strokes (in tuples) with thumb (down), little and
index finger (both up). There's also an abanico 2 @emph{abanico 2} where middle
and ring finger are used instead of the little finger. * alza pua:
@item
@emph{alza pua}: fast playing with the thumb
@end itemize

Most figures use arrows in combination with fingering; with abanicos
and rasgueados, noteheads are printed only for the first chord.
------------
flat-ties.ly

\header {
  texidoc = "
The function takes the default @code{Tie.stencil} as an argument,
calculating the result relying on the extents of this default. default.@*
Further tweaking is possible by overriding
@code{Tie.details.height-limit} or with @code{\\shape}. It's also
possible to change the custom-definition on the fly.
------------
generating-whole-scores-also-book-parts-in-scheme-without-using-the-parser.ly

a score without an input file. If you have the music expression in
scheme, a score can be generated by simply calling

@verbatim
(scorify-music music parser)
@end verbatim

on your music. This will generate a score object, for which you can
then set a custom layout block with

@verbatim
(let* ((layout (ly:output-def-clone $defaultlayout)))
   ; modify the layout here, then assign it:
   (ly:score-add-output-def! score layout)
  )
@end verbatim

Finally, all you have to do it to pass this score to lilypond for
typesetting. This snippet defines functions
------------
hiding-the-extender-line-for-text-dynamics.ly


\header {
  texidoc = "
Text style dynamic changes (such as cresc. @emph{cresc.} and dim.) @emph{dim.}) are
printed with a dashed line showing their extent.  This line can be
suppressed in the following way:

------------
horizontally-aligning-custom-dynamics-e.g.-sempre-pp,-piu-f,-subito-p.ly


\header {
  texidoc = "
Some dynamic expressions involve additional text, like @qq{sempre pp}.
@strong{pp}}. Since dynamics are usually centered under the note, the
\\pp would be displayed way after the note it applies to. to.@*
To correctly align the @qq{sempre pp} @strong{pp}} horizontally, so that it
is aligned as if it were only the \\pp, there are several approaches:

* @itemize
@item
Simply use @code{\\once\\override DynamicText.X-offset = #-9.2} before
the note with the dynamics to manually shift it to the correct
position. Drawback: This has to be done manually each time you use that
dynamic markup...
* @item
Add some padding (@code{#:hspace 7.1}) into the definition of your
custom dynamic mark, so that after lilypond center-aligns it, it is
already correctly aligned. Drawback: The padding really takes up that
space and does not allow any other markup or dynamics to be shown in
that position.
* @item
Shift the dynamic script @code{\\once\\override ... .X-offset = ..}.
Drawback: @code{\\once\\override} is needed for every invocation!
* @item
Set the dimensions of the additional text to 0 (using
@code{#:with-dimensions '(0 . 0) '(0 . 0)}). Drawback: To LilyPond
@qq{sempre} has no extent, so it might put other stuff there and create
collisions (which are not detected by the collision detection!). Also,
there seems to be some spacing, so it's not exactly the same alignment
as without the additional text
* @item
Add an explicit shifting directly inside the scheme function for the
dynamic-script.
* @item
Set an explicit alignment inside the dynamic-script. By default, this
won't have any effect, only if one sets X-offset! Drawback: One needs
to set @code{DynamicText.X-offset}, which will apply to all dynamic
texts! Also, it is aligned at the right edge of the additional text,
not at the center of pp.
@end itemize

"
  doctitle = "Horizontally aligning custom dynamics (e.g. \"sempre pp\", \"piu f\", \"subito p\")"
------------
how-to-print-two-rehearsal-marks-above-and-below-the-same-barline-method-1.ly

a rehearsal mark it is possible to centre those above and below a bar
line.

Adding the appropriate 'break visibility' as shown in snippet 1
@uref{\%22http://lsr.di.unimi.it/LSR/Item?id=1\%22,1} will allow you to
position two marks at the end of a line as well.

Note: Method 1 is less complex than Method 2 but does not really allow
------------
indicating-cross-staff-chords-with-arpeggio-bracket.ly

arpeggios must be set to the bracket shape in the @code{PianoStaff}
context.

(Debussy, Les @emph{Les collines d’Anacapri, d'Anacapri,} m. 65)

"
  doctitle = "Indicating cross-staff chords with arpeggio bracket"
------------
let-tabstaff-print-the-topmost-string-at-bottom.ly


\header {
  texidoc = "
In tablatures usually the first string is printed topmost. topmost.@*
If you want to have it at the bottom change the
@code{stringOneTopmost}-context-property. @code{stringOneTopmost}-context-property.@*
For a context-wide setting this could be done in @code{layout} as well.

"
------------
manually-break-figured-bass-extenders-for-only-some-numbers.ly

Figured bass often uses extenders to indicate continuation of the
corresponding step. However, in this case lilypond is in greedy-mode
and uses extenders whenever possible. To break individual extenders,
one can simply use a modifier \\! @code{\\!} to a number, which breaks any
extender attributed to that number right before the number.

"
------------
modifying-default-values-for-articulation-shorthand-notation.ly

@code{dashBar}, @code{dashLarger}, @code{dashDot}, and
@code{dashUnderscore} are assigned default values.  The default values
for the shorthands can be modified. For example, to associate the
@code{-+} (@code{dashPlus}) shorthand with the trill @emph{trill} symbol
instead of the default + @emph{+} symbol, assign the value @code{trill}
to the variable @code{dashPlus}:

"
------------
non-traditional-key-signatures.ly

To create non-standard key signatures, set this property directly. The
format of this command is a list:

@code{ \\set Staff.keySignature = #`(((octave . step) . alter) ((octave . step) . alter) ...) } ...)}

where, for each element in the list, @code{octave} specifies the octave
(0 being the octave from middle C to the B above), @code{step}
------------
of-the-ubiquity-of-markup-objects.ly


As such, markup blocks may be used:

* @itemize
@item
in any TextScript object (attached to notes with @code{-}, @code{^} or
@code{_}),
* @item
any RehearsalMark introduced with the @code{\\mark} keyword, or other
similar objects such as MetronomeMark introduced with @code{\\tempo},
* @item
as standalone markup blocks, entered at the top level outside of any
@code{\\score} block,
* @item
in any definition inside the @code{\\header} block (e.g. title,
subtitle, composer) or in some variables defined inside the
@code{\\paper} block such as @code{evenHeaderMarkup} for page numbers.
@end itemize

@code{\\markup} may additionally be used for lyrics, in chord names,
and as dynamics.  In fact, it is possible to use @code{\\markup} to
------------
overriding-articulations-of-destinct-type.ly


\header {
  texidoc = "
Sometimes you may want to affect a single articulation-type. articulation-type.@*
Although it is always possible to use @code{\\tweak}, it might become
tedious to do so for every single sign of a whole score. score.@*
The following shows how to tweak articulations with a list of
custom-settings. One use-case might be to create a style-sheet.

------------
partcombine-and-autobeamoff.ly

single.

In order to use @code{\\autoBeamOff} to stop all autobeaming when used
with @code{\\partcombine}, it will be necessary to use three @emph{three}
calls to @code{\\autoBeamOff}.

"
------------
placement-of-right-hand-fingerings.ly

  texidoc = "
It is possible to exercise greater control over the placement of
right-hand fingerings by setting a specific property, as demonstrated
in the following example. Note: you must use a chord construct <>, even
if it is only a single note.

"
  doctitle = "Placement of right-hand fingerings"
------------
several-procedures-to-print-different-bar-numbering-rules.ly


here are some procedures to do so:

* @itemize
@item
@code{#all-bar-numbers-visible}
* @item
@code{#(every-nth-bar-number-visible n)}
* @item
@code{#(modulo-bar-number-visible n m)}
(needs version 2.16 or higher:)
* @item
@code{#first-bar-number-invisible-save-broken-bars}
* @item
@code{#first-bar-number-invisible-and-no-parenthesized-bar-numbers}
@end itemize

"
  doctitle = "several procedures to print different bar numbering rules"
------------
showing-the-same-articulation-above-and-below-a-note-or-chord.ly

  texidoc = "
By default, LilyPond does not allow the same articulation (e.g., an
accent, a fermata, a flageolet, etc.) to be displayed above and below a
note. For example, c4_\\fermata^\\fermata @code{c4_\\fermata^\\fermata} will only show a
fermata below. The fermata above will simply be ignored. ignored.@*
However, one can stick scripts (just like fingerings) inside a chord,
which means it is possible to have as many articulations as desired.
This approach has the advantage that it ignores the stem and positions
the articulation relative to the note head. This can be seen in the
case of the flageolets in the snippet. To mimic the behaviour of
scripts outside a chord, 'add-stem-support would be required. required.@*
So, the solution is to write the note as a chord and add the
articulations inside the <...>. @code{<...>}. The direction will always be
above, but one can tweak this via a \\tweak:
@code{<c-\\tweak direction #DOWN-\\fermata^\\fermata>}

------------
skips-in-lyric-mode-2.ly

  texidoc = "
Although @code{s} skips cannot be used in @code{\\lyricmode} (it is
taken to be a literal @qq{s}, not a space), double quotes (@code{\"\"})
or underscores (@code{_}) are available.So available.

So for example:

"
  doctitle = "Skips in lyric mode (2)"
------------
string-quartet-template-with-separate-parts.ly


You need to split this template into separate files; the filenames are
contained in comments at the beginning of each file. @code{piece.ly}
contains all the music definitions. The other files – -- @code{score.ly},
@code{vn1.ly}, @code{vn2.ly}, @code{vla.ly}, and @code{vlc.ly} – --
produce the appropriate part.

Do not forget to remove specified comments when using separate files!
------------
two--partcombine-pairs-on-one-staff.ly

usual way.  Here we define extensions of @code{\\partcombine} to make
it easier to put four voices on a staff.

@verbatim
soprano = @{ { d'4 | cis'  b  e'  d'8 cis' | cis'2 b @} }
alto = @{ { fis4 | e8 fis gis ais b4 b | b ais fis2 @} }
tenor = @{ { a8 b | cis' dis' e'4 b8 cis' d'4 | gis cis' dis'2 @} }
bass = @{ { fis8 gis | a4 gis g fis | eis fis b,2 @} }

\\new Staff <<
  \\key b\\minor
--
  \\partcombineUp \\soprano \\alto
  \\partcombineDown \\tenor \\bass
>>
@end verbatim

"
  doctitle = "Two \\partcombine pairs on one staff"
------------
using-double-slurs-for-legato-chords.ly


\header {
  texidoc = "
Some composers write two slurs @emph{slurs} when they want legato
chords.  This can be achieved by setting @code{doubleSlurs}.

"
------------
using-ly-grob-object-to-access-grobs-with--tweak.ly


\header {
  texidoc = "
Some grobs can be accessed “laterally” from within another grob’s grob's
callback. These are usually listed as “layout objects” in the “Internal
properties” section of a grob-interface. The function ly:grob-object is
used to access these grobs.
------------
vocal-ensemble-template-with-automatic-piano-reduction.ly

  texidoc = "
This template adds an automatic piano reduction to the standard SATB
vocal score demonstrated in @qq{Vocal ensemble template}. This
demonstrates one of the strengths of LilyPond – -- you can use a music
definition more than once. If any changes are made to the vocal notes
(say, @code{tenorMusic}), then the changes will also apply to the piano
reduction.
------------

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: better LSR to lilypond snippet conversion tool

Dan Eble
On Oct 8, 2019, at 16:21, Werner LEMBERG <[hidden email]> wrote:
> I'm not sure how to proceed.  Shall I adapt `makelsr.py' to start
> where this script stops?

I can't contribute much to an answer, but I want to say that the last time I tried updating snippets (probably over a year ago), the documented process failed because my source tree is read-only in my build environment and the script tries to rewrite source files.

I’ve been expecting to have to do one of the following (from most to least preferred) in order to make it work for me.

1. Add an option to create snippets in the build directory and stop.  Copy them to the source directory manually in the host environment.

2. Grant my build environment write access to the source directory when I want to import snippets.

3. Never run the script.  Ask others to do it.

4. Run the script in the host environment.

I humbly request that as you are working on this process, you try to avoid making (1) more difficult.

Regards,

Dan


_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel