]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/notation/input.itely
Doc: fix broken link
[lilypond.git] / Documentation / notation / input.itely
index 315660b68d664dfe6371d3604ed9696754322b21..f28d19f43d44bd3831ad1a3462b83128f5a4d02a 100644 (file)
@@ -8,7 +8,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.17.6"
+@c \version "2.19.2"
 
 @node General input and output
 @chapter General input and output
@@ -2071,12 +2071,9 @@ LilyPond files}.
 @funindex \tag
 @funindex \keepWithTag
 @funindex \removeWithTag
-@funindex \pushToTag
-@funindex \appendToTag
 @cindex tag
 @cindex keep tagged music
 @cindex remove tagged music
-@cindex splice into tagged music
 
 The @code{\tag #'@var{partA}} command marks a music expression
 with the name @var{partA}.
@@ -2106,9 +2103,9 @@ Tagged music not preceded by either @code{\keepWithTag} or
 @end multitable
 
 The arguments of the @code{\tag}, @code{\keepWithTag} and
-@code{\removeWithTag} commands should be a symbol
-(such as @code{#'score} or @code{#'part}), followed
-by a music expression.
+@code{\removeWithTag} commands should be a symbol or list of
+symbols (such as @code{#'score} or @code{#'(violinI violinII}),
+followed by a music expression.
 
 In the following example, we see two versions of a piece of music,
 one showing trills with the usual notation, and one with trills
@@ -2212,6 +2209,38 @@ Usually you would rather want to use a single @code{\keepWithTag}
 command with a list of multiple tags: this will only remove tagged
 sections not given in @emph{any} of the tags.
 
+@cindex tag groups
+@funindex \tagGroup
+While @code{\keepWithTag} is convenient when dealing with
+@emph{one} set of alternatives, the removal of music tagged with
+@emph{unrelated} tags is problematic when using tags for more than
+one purpose.  For that reason, @q{tag groups} of related tags can
+be declared:
+
+@example
+\tagGroup #'(violinI violinII viola cello)
+@end example
+
+declares the respective tags as belonging to one tag group.
+
+@example
+\keepWithTag #'violinI @dots{}
+@end example
+
+will then only be concerned with tags from @code{violinI}'s tag
+group: any element of the included music that is tagged with one
+or more of tags from this set but @emph{not} with @code{violinI}
+will get removed.
+
+To any @code{\keepWithTag} command, only tags from the tag groups
+of the tags given in the command are visible.
+
+Tags cannot be members of more than one tag group.
+
+@funindex \pushToTag
+@funindex \appendToTag
+@cindex splice into tagged music
+
 Sometimes you want to splice some music at a particular place in an
 existing music expression.  You can use @code{\pushToTag} and
 @code{\appendToTag} for adding material at the front or end of the
@@ -2233,9 +2262,7 @@ test = { \tag #'here { \tag #'here <<c''>> } }
 @end lilypond
 
 Both commands get a tag, the material to splice in at every occurence of
-the tag, and the tagged expression.  The commands make sure to
-copy everything that they change so that the original @code{\test}
-retains its meaning.
+the tag, and the tagged expression.
 
 @seealso
 Learning Manual:
@@ -2514,7 +2541,7 @@ In order to use this feature, LilyPond must be invoked with
 @option{-dclip-systems}.  The clips are output as EPS files, and are
 converted to PDF and PNG if these formats are switched on as well.
 
-For more information on output formats, see @rprogram{Invoking lilypond}.
+For more information on output formats, see @rprogram{Invoking LilyPond}.
 
 @node Skipping corrected music
 @subsection Skipping corrected music
@@ -2772,6 +2799,9 @@ crescendi and decrescendi cannot affect the volume of a single note.
 Some MIDI players may not always correctly handle tempo changes in the
 midi output.
 
+Changes to @code{midiInstrument} (and other MIDI options) at the
+beginning of a staff may appear twice in the MIDI output.
+
 
 @node MIDI Instruments
 @subsection MIDI Instruments
@@ -3057,8 +3087,8 @@ volume is limited to the range 0.2 - 0.5.
       \set Staff.midiInstrument = #"flute"
       \new Voice \relative c''' {
         r2 g\mp g fis~
-        fis4 g8 fis e2~
-        e4 d8 cis d2
+        4 g8 fis e2~
+        4 d8 cis d2
       }
     }
     \new Staff {
@@ -3114,8 +3144,8 @@ volume of the flute.
       \set Staff.midiMaximumVolume = #0.9
       \new Voice \relative c''' {
         r2 g\mp g fis~
-        fis4 g8 fis e2~
-        e4 d8 cis d2
+        4 g8 fis e2~
+        4 d8 cis d2
       }
     }
     \new Staff {
@@ -3188,8 +3218,8 @@ the same values as the previous example.
       \set Staff.midiInstrument = #"flute"
       \new Voice \relative c''' {
         r2 g\mp g fis~
-        fis4 g8 fis e2~
-        e4 d8 cis d2
+        4 g8 fis e2~
+        4 d8 cis d2
       }
     }
     \new Staff {