+@cindex instrument switch
+@cindex switching instruments
+
+If an instrument @emph{switch} is needed,
+@code{\addInstrumentDefinition} may be used in combination with
+@code{\instrumentSwitch} to create a detailed list of the
+necessary changes for the switch. The
+@code{\addInstrumentDefinition} command has two arguments: an
+identifying string, and an alist of context properties and values
+to be used for the instrument. It must be placed in the toplevel
+scope. @code{\instrumentSwitch} is used in the music expression
+to declare the instrument switch:
+
+@lilypond[verbatim,quote,ragged-right]
+\addInstrumentDefinition #"contrabassoon"
+ #`((instrumentTransposition . ,(ly:make-pitch -1 0 0))
+ (shortInstrumentName . "Cbsn.")
+ (clefGlyph . "clefs.F")
+ (middleCPosition . 6)
+ (clefPosition . 2)
+ (instrumentCueName . ,(make-bold-markup "cbsn."))
+ (midiInstrument . "bassoon"))
+
+\new Staff \with {
+ instrumentName = "Bassoon"
+}
+\relative c' {
+ \clef tenor
+ \compressFullBarRests
+ c2 g'
+ R1*16
+ \instrumentSwitch "contrabassoon"
+ c,,2 g \break
+ c,1 ~ | c1
+}
+@end lilypond
+