]> git.donarmstrong.com Git - lilypond.git/commitdiff
Merge branch 'lilypond/translation' of ssh://git.sv.gnu.org/srv/git/lilypond into...
authorTill Paala <till.rettig@gmx.de>
Fri, 14 Jan 2011 20:18:01 +0000 (22:18 +0200)
committerTill Paala <till.rettig@gmx.de>
Fri, 14 Jan 2011 20:18:01 +0000 (22:18 +0200)
304 files changed:
.mailmap
Documentation/changes.tely
Documentation/contributor/administration.itexi
Documentation/contributor/doc-work.itexi
Documentation/contributor/issues.itexi
Documentation/contributor/quick-start.itexi
Documentation/contributor/regressions.itexi
Documentation/contributor/source-code.itexi
Documentation/de/included/helpus.itexi
Documentation/de/notation/fretted-strings.itely
Documentation/es/changes.tely
Documentation/es/notation/fretted-strings.itely
Documentation/es/web/community.itexi
Documentation/fr/notation/editorial.itely
Documentation/fr/notation/fretted-strings.itely
Documentation/fr/notation/input.itely
Documentation/fr/texidocs/changing-midi-output-to-one-channel-per-voice.texidoc [new file with mode: 0644]
Documentation/fr/texidocs/grid-lines--changing-their-appearance.texidoc
Documentation/fr/usage/running.itely
Documentation/fr/web/community.itexi
Documentation/included/authors.itexi
Documentation/included/compile.itexi
Documentation/included/display-predefined-string-tunings.ly [new file with mode: 0644]
Documentation/notation/changing-defaults.itely
Documentation/notation/fretted-strings.itely
Documentation/notation/keyboards.itely
Documentation/notation/notation-appendices.itely
Documentation/snippets/accordion-discant-symbols.ly
Documentation/snippets/adding-a-figured-bass-above-or-below-the-notes.ly
Documentation/snippets/adding-ambitus-per-voice.ly
Documentation/snippets/adding-an-extra-staff-at-a-line-break.ly
Documentation/snippets/adding-an-extra-staff.ly
Documentation/snippets/adding-bar-lines-to-chordnames-context.ly
Documentation/snippets/adding-beams,-slurs,-ties-etc.-when-using-tuplet-and-non-tuplet-rhythms.ly
Documentation/snippets/adding-drum-parts.ly
Documentation/snippets/adding-fingerings-to-tablatures.ly
Documentation/snippets/adding-orchestral-cues-to-a-vocal-score.ly
Documentation/snippets/adding-parentheses-around-an-expressive-mark-or-chordal-note.ly
Documentation/snippets/adding-the-current-date-to-a-score.ly
Documentation/snippets/adding-volta-brackets-to-additional-staves.ly
Documentation/snippets/additional-voices-to-avoid-collisions.ly
Documentation/snippets/adjusting-grace-note-spacing.ly
Documentation/snippets/adjusting-lyrics-vertical-spacing.ly
Documentation/snippets/adjusting-the-shape-of-falls-and-doits.ly
Documentation/snippets/aligning-and-centering-instrument-names.ly
Documentation/snippets/aligning-bar-numbers.ly
Documentation/snippets/aligning-marks-with-various-notation-objects.ly
Documentation/snippets/allowing-fingerings-to-be-printed-inside-the-staff.ly
Documentation/snippets/altering-the-length-of-beamed-stems.ly
Documentation/snippets/ambitus-with-multiple-voices.ly
Documentation/snippets/analysis-brackets-above-the-staff.ly
Documentation/snippets/ancient-fonts.ly
Documentation/snippets/ancient-headword.ly
Documentation/snippets/ancient-notation-template----modern-transcription-of-gregorian-music.ly
Documentation/snippets/ancient-notation-template----modern-transcription-of-mensural-music.ly
Documentation/snippets/ancient-time-signatures.ly
Documentation/snippets/applying-note-head-styles-depending-on-the-step-of-the-scale.ly
Documentation/snippets/arabic-improvisation.ly
Documentation/snippets/asymmetric-slurs.ly
Documentation/snippets/automatic-beam-subdivisions.ly
Documentation/snippets/avoiding-collisions-with-chord-fingerings.ly
Documentation/snippets/beam-endings-in-score-context.ly
Documentation/snippets/beam-grouping-in-7-8-time.ly
Documentation/snippets/beams-across-line-breaks.ly
Documentation/snippets/blanking-staff-lines-using-the--whiteout-command.ly
Documentation/snippets/broken-crescendo-hairpin.ly
Documentation/snippets/caesura-railtracks-with-fermata.ly
Documentation/snippets/center-text-below-hairpin-dynamics.ly
Documentation/snippets/centering-markup-on-note-heads-automatically.ly
Documentation/snippets/changing--flageolet-mark-size.ly
Documentation/snippets/changing-a-single-notes-size-in-a-chord.ly
Documentation/snippets/changing-beam-knee-gap.ly
Documentation/snippets/changing-chord-separator.ly
Documentation/snippets/changing-form-of-multi-measure-rests.ly
Documentation/snippets/changing-fret-orientations.ly
Documentation/snippets/changing-midi-output-to-one-channel-per-voice.ly
Documentation/snippets/changing-partcombine-texts.ly
Documentation/snippets/changing-text-and-spanner-styles-for-text-dynamics.ly
Documentation/snippets/changing-the-ambitus-gap.ly
Documentation/snippets/changing-the-appearance-of-a-slur-from-solid-to-dotted-or-dashed.ly
Documentation/snippets/changing-the-breath-mark-symbol.ly
Documentation/snippets/changing-the-chord-names-to-german-or-semi-german-notation.ly
Documentation/snippets/changing-the-number-of-augmentation-dots-per-note.ly
Documentation/snippets/changing-the-positions-of-figured-bass-alterations.ly
Documentation/snippets/changing-the-size-of-woodwind-diagrams.ly
Documentation/snippets/changing-the-tempo-without-a-metronome-mark.ly
Documentation/snippets/changing-the-text-for-sustain-markings.ly
Documentation/snippets/changing-the-time-signature-without-affecting-the-beaming.ly
Documentation/snippets/changing-the-tuplet-number.ly
Documentation/snippets/changing-time-signatures-inside-a-polymetric-section-using--scaledurations.ly
Documentation/snippets/chant-or-psalms-notation.ly
Documentation/snippets/chord-name-exceptions.ly
Documentation/snippets/chord-name-major7.ly
Documentation/snippets/chordchanges-for-fretboards.ly
Documentation/snippets/chords-headword.ly
Documentation/snippets/clip-systems.ly
Documentation/snippets/clusters.ly
Documentation/snippets/combining-dynamics-with-markup-texts.ly
Documentation/snippets/combining-two-parts-on-the-same-staff.ly
Documentation/snippets/compound-time-signatures.ly
Documentation/snippets/conducting-signs,-measure-grouping-signs.ly
Documentation/snippets/contemporary-glissando.ly
Documentation/snippets/controlling-spanner-visibility-after-a-line-break.ly
Documentation/snippets/controlling-the-placement-of-chord-fingerings.ly
Documentation/snippets/controlling-the-vertical-ordering-of-scripts.ly
Documentation/snippets/controlling-tuplet-bracket-visibility.ly
Documentation/snippets/creating-a-delayed-turn.ly
Documentation/snippets/creating-a-sequence-of-notes-on-various-pitches.ly
Documentation/snippets/creating-arpeggios-across-notes-in-different-voices.ly
Documentation/snippets/creating-blank-staves.ly
Documentation/snippets/creating-cross-staff-arpeggios-in-a-piano-staff.ly
Documentation/snippets/creating-cross-staff-arpeggios-in-other-contexts.ly
Documentation/snippets/creating-metronome-marks-in-markup-mode.ly
Documentation/snippets/creating-real-parenthesized-dynamics.ly
Documentation/snippets/creating-simultaneous-rehearsal-marks.ly
Documentation/snippets/creating-slurs-across-voices.ly
Documentation/snippets/creating-text-spanners.ly
Documentation/snippets/cross-staff-tremolos.ly
Documentation/snippets/custodes.ly
Documentation/snippets/customizing-fretboard-fret-diagrams.ly
Documentation/snippets/customizing-markup-fret-diagrams.ly
Documentation/snippets/default-direction-of-stems-on-the-center-line-of-the-staff.ly
Documentation/snippets/defining-an-engraver-in-scheme-ambitus-engraver.ly
Documentation/snippets/defining-predefined-fretboards-for-other-instruments.ly
Documentation/snippets/display-bracket-with-only-one-staff-in-a-system.ly
Documentation/snippets/displaying-complex-chords.ly
Documentation/snippets/displaying-grob-ancestry.ly
Documentation/snippets/dodecaphonic-style-accidentals-for-each-note-including-naturals.ly
Documentation/snippets/dynamics-custom-text-spanner-postfix.ly
Documentation/snippets/dynamics-text-spanner-postfix.ly
Documentation/snippets/editorial-headword.ly
Documentation/snippets/embedding-native-postscript-in-a--markup-block.ly
Documentation/snippets/engravers-one-by-one.ly
Documentation/snippets/engraving-ties-manually.ly
Documentation/snippets/entering-several-tuplets-using-only-one--times-command.ly
Documentation/snippets/expressive-headword.ly
Documentation/snippets/faking-a-hammer-in-tablatures.ly
Documentation/snippets/figured-bass-headword.ly
Documentation/snippets/fingering-symbols-for-wind-instruments.ly
Documentation/snippets/fingerings,-string-indications,-and-right-hand-fingerings.ly
Documentation/snippets/flamenco-notation.ly
Documentation/snippets/flat-flags-and-beam-nibs.ly
Documentation/snippets/forcing-horizontal-shift-of-notes.ly
Documentation/snippets/forcing-hyphens-to-be-shown.ly
Documentation/snippets/fretboards-alternate-tables.ly
Documentation/snippets/fretted-headword.ly
Documentation/snippets/generating-random-notes.ly
Documentation/snippets/graphical-and-text-woodwind-diagrams.ly
Documentation/snippets/grid-lines--changing-their-appearance.ly
Documentation/snippets/grid-lines--emphasizing-rhythms-and-notes-synchronization.ly
Documentation/snippets/grouping-beats.ly
Documentation/snippets/guitar-slides.ly
Documentation/snippets/guitar-strum-rhythms.ly
Documentation/snippets/hairpins-with-different-line-styles.ly
Documentation/snippets/hiding-accidentals-on-tied-notes-at-the-start-of-a-new-system.ly
Documentation/snippets/hiding-the-extender-line-for-text-dynamics.ly
Documentation/snippets/hymn-template.ly
Documentation/snippets/incipit.ly
Documentation/snippets/indicating-cross-staff-chords-with-arpeggio-bracket.ly
Documentation/snippets/inserting-a-caesura.ly
Documentation/snippets/isolated-percent-repeats.ly
Documentation/snippets/jazz-combo-template.ly
Documentation/snippets/keep-change-clefs-full-sized.ly
Documentation/snippets/keyboard-headword.ly
Documentation/snippets/letter-tablature-formatting.ly
Documentation/snippets/line-arrows.ly
Documentation/snippets/lyrics-alignment.ly
Documentation/snippets/makam-example.ly
Documentation/snippets/making-slurs-with-complex-dash-structure.ly
Documentation/snippets/making-some-staff-lines-thicker-than-the-others.ly
Documentation/snippets/measure-counter.ly
Documentation/snippets/mensurstriche-layout-bar-lines-between-the-staves.ly
Documentation/snippets/modern-tab-text-clef.ly
Documentation/snippets/modifying-default-values-for-articulation-shorthand-notation.ly
Documentation/snippets/moving-dotted-notes-in-polyphony.ly
Documentation/snippets/moving-slur-positions-vertically.ly
Documentation/snippets/multi-measure-rest-markup.ly
Documentation/snippets/nesting-staves.ly
Documentation/snippets/new/defining-predefined-fretboards-for-other-instruments.ly [new file with mode: 0644]
Documentation/snippets/non-default-tuplet-numbers.ly
Documentation/snippets/non-traditional-key-signatures.ly
Documentation/snippets/numbers-as-easy-note-heads.ly
Documentation/snippets/orchestra,-choir-and-piano-template.ly
Documentation/snippets/ottava-text.ly
Documentation/snippets/partcombine-and-autobeamoff.ly
Documentation/snippets/percent-repeat-count-visibility.ly
Documentation/snippets/percent-repeat-counter.ly
Documentation/snippets/permitting-line-breaks-within-beamed-tuplets.ly
Documentation/snippets/piano-template-simple.ly
Documentation/snippets/piano-template-with-centered-dynamics.ly
Documentation/snippets/piano-template-with-centered-lyrics.ly
Documentation/snippets/piano-template-with-melody-and-lyrics.ly
Documentation/snippets/pitches-headword.ly
Documentation/snippets/placement-of-right-hand-fingerings.ly
Documentation/snippets/polyphony-in-tablature.ly
Documentation/snippets/positioning-arpeggios.ly
Documentation/snippets/positioning-grace-note-beams-at-the-height-of-normal-note-beams.ly
Documentation/snippets/positioning-grace-notes-with-floating-space.ly
Documentation/snippets/positioning-multi-measure-rests.ly
Documentation/snippets/positioning-text-markups-inside-slurs.ly
Documentation/snippets/preventing-extra-naturals-from-being-automatically-added.ly
Documentation/snippets/preventing-natural-signs-from-being-printed-when-the-key-signature-changes.ly
Documentation/snippets/printing-a-repeat-sign-at-the-beginning-of-a-piece.ly
Documentation/snippets/printing-bar-numbers-at-regular-intervals.ly
Documentation/snippets/printing-bar-numbers-inside-boxes-or-circles.ly
Documentation/snippets/printing-hairpins-using-al-niente-notation.ly
Documentation/snippets/printing-marks-at-the-end-of-a-line.ly
Documentation/snippets/printing-marks-on-every-staff.ly
Documentation/snippets/printing-metronome-and-rehearsal-marks-below-the-staff.ly
Documentation/snippets/printing-note-names-with-and-without-an-octave-marker.ly
Documentation/snippets/printing-the-bar-number-for-the-first-measure.ly
Documentation/snippets/quoting-another-voice-with-transposition.ly
Documentation/snippets/quoting-another-voice.ly
Documentation/snippets/recorder-fingering-chart.ly
Documentation/snippets/redefining-grace-note-global-defaults.ly
Documentation/snippets/removing-bar-numbers-from-a-score.ly
Documentation/snippets/removing-connecting-bar-lines-on-staffgroup,-pianostaff,-or-grandstaff.ly
Documentation/snippets/removing-the-first-empty-line.ly
Documentation/snippets/repeats-headword.ly
Documentation/snippets/rest-styles.ly
Documentation/snippets/reverting-default-beam-endings.ly
Documentation/snippets/rhythms-headword.ly
Documentation/snippets/screech-boink.ly
Documentation/snippets/setting-hairpin-behavior-at-bar-lines.ly
Documentation/snippets/setting-system-separators.ly
Documentation/snippets/setting-the-double-repeat-default-for-volte.ly
Documentation/snippets/setting-the-minimum-length-of-hairpins.ly
Documentation/snippets/shortening-volta-brackets.ly
Documentation/snippets/showing-chords-at-changes.ly
Documentation/snippets/showing-the-same-articulation-above-and-below-a-note-or-chord.ly
Documentation/snippets/simple-lead-sheet.ly
Documentation/snippets/simultaneous-headword.ly
Documentation/snippets/single-staff-template-with-notes,-lyrics,-and-chords.ly
Documentation/snippets/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly
Documentation/snippets/single-staff-template-with-notes-and-chords.ly
Documentation/snippets/single-staff-template-with-notes-and-lyrics.ly
Documentation/snippets/single-staff-template-with-only-notes.ly
Documentation/snippets/snap-pizzicato-bartok-pizzicato.ly
Documentation/snippets/staff-headword.ly
Documentation/snippets/stand-alone-two-column-markup.ly
Documentation/snippets/stem-and-beam-behavior-in-tablature.ly
Documentation/snippets/string-quartet-template-simple.ly
Documentation/snippets/string-quartet-template-with-separate-parts.ly
Documentation/snippets/subdividing-beams.ly
Documentation/snippets/text-headword.ly
Documentation/snippets/time-signature-printing-only-the-numerator-as-a-number-instead-of-the-fraction.ly
Documentation/snippets/transcription-of-ancient-music-with-incipit.ly
Documentation/snippets/transposing-pitches-with-minimum-accidentals-smart-transpose.ly
Documentation/snippets/tweaking-clef-properties.ly
Documentation/snippets/tweaking-grace-layout-within-music.ly
Documentation/snippets/unfretted-headword.ly
Documentation/snippets/use-square-bracket-at-the-start-of-a-staff-group.ly
Documentation/snippets/using-alternative-flag-styles.ly
Documentation/snippets/using-arpeggiobracket-to-make-divisi-more-visible.ly
Documentation/snippets/using-double-slurs-for-legato-chords.ly
Documentation/snippets/using-grace-note-slashes-with-normal-heads.ly
Documentation/snippets/using-ly-grob-object-to-access-grobs-with--tweak.ly
Documentation/snippets/using-the-whiteout-property.ly
Documentation/snippets/using-ties-with-arpeggios.ly
Documentation/snippets/vertically-aligned-dynamics-and-textscripts.ly
Documentation/snippets/vertically-aligning-dynamics-across-multiple-notes.ly
Documentation/snippets/vertically-aligning-ossias-and-lyrics.ly
Documentation/snippets/vertically-centering-paired-figured-bass-extenders.ly
Documentation/snippets/vocal-ensemble-template-with-automatic-piano-reduction.ly
Documentation/snippets/vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly
Documentation/snippets/vocal-ensemble-template-with-verse-and-refrain.ly
Documentation/snippets/vocal-ensemble-template.ly
Documentation/snippets/volta-below-chords.ly
Documentation/snippets/wind-headword.ly
Documentation/snippets/woodwind-diagrams-key-lists.ly
Documentation/snippets/woodwind-diagrams-listing.ly
Documentation/web/introduction.itexi
Documentation/web/news-front.itexi
VERSION
input/regression/clef-oct-visibility.ly [new file with mode: 0644]
input/regression/cue-clef-begin-of-score.ly [new file with mode: 0644]
input/regression/cue-clef-new-line.ly [new file with mode: 0644]
input/regression/cue-clef-octavation.ly [new file with mode: 0644]
input/regression/cue-clef.ly [new file with mode: 0644]
input/regression/tablature-letter.ly
input/regression/tablature-string-tunings.ly
lily/clef-engraver.cc
lily/cue-clef-engraver.cc [new file with mode: 0644]
lily/include/page-breaking.hh
lily/optimal-page-breaking.cc
lily/page-breaking.cc
lily/pitch-scheme.cc
ly/bagpipe.ly
ly/declarations-init.ly
ly/engraver-init.ly
ly/music-functions-init.ly
ly/string-tunings-init.ly [new file with mode: 0644]
python/convertrules.py
python/musicexp.py
scm/define-context-properties.scm
scm/define-grobs.scm
scm/define-music-properties.scm
scm/music-functions.scm
scm/output-lib.scm
scm/parser-clef.scm
scm/tablature.scm
scm/time-signature-settings.scm
scm/translation-functions.scm
scripts/auxiliar/ref_check.py

index 2c0c66e6515864685aeca09df90ca3e52db2881c..ac9bad10287b1bc6e11547a5c74d5f1d12c622eb 100644 (file)
--- a/.mailmap
+++ b/.mailmap
@@ -101,6 +101,7 @@ James E. Bailey <derhindemith@googlemail.com>
 James Lowe <james@james-lilybunto.(none)>
 James Lowe <james@james-lily.(none)>
 James Lowe <james.lowe@datacore.com>
+James Lowe <jlowe@james-ubuntu.(none)>
 Jan Nieuwenhuizen <jan>
 Jan Nieuwenhuizen <janneke>
 Jan Nieuwenhuizen <janneke@gnu.org>
@@ -127,6 +128,7 @@ Jonathan Kulp <jonlancekulp@gmail.com>
 Joseph Wakeling <joseph.wakeling@webdrake.net>
 Jürgen Reuter <reuter>
 Jürgen Reuter <reuter@ipd.uka.de>
+Keith OHara <k-ohara5a5a@oco.net>
 Kevin Dalley <kevin@kelphead.org>
 Kieren MacMillan <kieren_macmillan@sympatico.ca>
 Kurt Kroon <kroon@winfirst.com>
@@ -175,6 +177,7 @@ Till Rettig <till.rettig@gmx.de>
 Till Rettig <till@urmeli.(none)>
 Travis Briggs <briggs.travis@gmail.com>
 Trevor Bača <trevorbaca@gmail.com>
+Trevor Daniels <tdanielsmusic@gmail.com>
 Trevor Daniels <t.daniels@treda.co.uk>
 Trevor Daniels <Trevor@Trevor-Laptop>
 Valentin Villenave <valentin@localhost.(none)>
index ddc6c575ce8bc34c3a5e15f3db86f99f8f032b9e..70e022276a25e77ed1a03598ec2ddc50dc385a55 100644 (file)
@@ -66,6 +66,44 @@ which scares away people.
 
 @end ignore
 
+@item
+@code{stringTunings} property values have changed from a list of
+semitones above middle C to a list of LilyPond pitch values.
+convert-ly will handle the change automatically where the value
+of @code{stringTunings} is set to a Scheme constant value.
+
+New commands @code{makeStringTuning} and @code{contextStringTuning}
+allow the creation of string tunings in the form of a Lilypond
+chord construct.
+
+@item
+By using @code{\cueDuringWithClef}, cue notes can now also have their own
+clef, which is correctly reset at the end of the cue notes.  At the begin
+of each line, the standard clef is still displayed, but the cue clef is
+shown after the time/key signature in smaller size.
+@lilypond
+vI = \relative c'' { \clef "treble" \repeat unfold 40 g4 }
+\addQuote vIQuote { \vI }
+
+Solo = \relative c {
+  \clef "bass"
+  \cueDuringWithClef #"vIQuote" #DOWN #"treble" { R1 } |
+  c4 \cueDuringWithClef #"vIQuote" #DOWN #"treble" {
+    r4 r2 |
+    r4
+  } c4 c2 |
+  \cueDuringWithClef #"vIQuote" #DOWN "soprano" { R1*2 \break R1 } |
+  c1
+}
+
+\score {
+  <<
+    \new Staff \new Voice \Solo
+  >>
+}
+@end lilypond
+
+
 @item
 Note names can be selected with a new
 @code{@bs{}language "italiano"} command, which
@@ -215,7 +253,12 @@ In tablature, frets can be indicated with labels other than numbers:
 @lilypond[verbatim,quote,relative=1]
 \new TabStaff
 \with {
-  stringTunings = #'(17 14 9 5 2 -3)
+  stringTunings = #`(,(ly:make-pitch 1 3 NATURAL)
+                     ,(ly:make-pitch 1 1 NATURAL)
+                    ,(ly:make-pitch 0 5 NATURAL)
+                    ,(ly:make-pitch 0 3 NATURAL)
+                    ,(ly:make-pitch 0 1 NATURAL)
+                    ,(ly:make-pitch -1 5 NATURAL))
   tablatureFormat = #fret-letter-tablature-format
 }
 \new TabVoice {
index 8dbc9eb68ffbdb1f5fa99ab897ab7613ee1e59c2..077eb15c157916810d864d93c1f0d229572c04dc 100644 (file)
@@ -485,6 +485,16 @@ required merging and stuff.
 
 (prep: 2 hours.  discuss: 10 hours)
 
+@item @strong{Precise definition of Critical issues}:
+at the moment, a stable release is entirely dependent on the
+number of Critical issues, but there's some questions about
+precisely what a "Critical issue" should be.  We should clarify
+this, in conjunction with a general discussion about how often we
+want to have stable releases, how permissive we want to be about
+patches, etc etc.
+
+(prep: 1 hour.  discuss: 5 hours)
+
 @end itemize
 
 
index f74d1417b22712c969727ac0ee7fb23df7ccd596..d56e4ec88f97ae399a0a0f3f65ca90a3618c8e38 100644 (file)
@@ -441,7 +441,7 @@ Beam, slur and tie marks should begin immediately after the first
 note with beam and phrase marks ending immediately after the last.
 
 @example
-a8(\ ais16[ b cis( d] b) cis4~ b' cis,\)
+a8\( ais16[ b cis( d] b) cis4~ b' cis,\)
 @end example
 
 @item
index 4260e838ad02b9339fde2bf594cca85bb6702fb5..7c715a4aedbd8df4d583a6c59b343cc8973af271 100644 (file)
@@ -733,8 +733,9 @@ Git has special functionality to help tracking down the exact
 commit which causes a problem.  See the git manual page for
 @code{git bisect}.  This is a job that non-programmers can do,
 although it requires familiarity with git, ability to compile
-LilyPond, and generally a fair amount of technical knowledge.  An
-in-depth explanation of this process will not be given here.
+LilyPond, and generally a fair amount of technical knowledge.  A
+brief summary is given below, but you may need to consult other
+documentation for in-depth explanations.
 
 Even if you are not familiar with git or are not able to compile
 LilyPond you can still help to narrow down the cause of a
@@ -742,7 +743,7 @@ regression simply by downloading the binary releases of different
 LilyPond versions and testing them for the regression.  Knowing
 which version of LilyPond first exhibited the regression is
 helpful to a developer as it shortens the @code{git bisect}
-procedure described above.
+procedure.
 
 Once a problematic commit is identified, the programmers' job is
 much easier.  In fact, for most regression bugs, the majority of
@@ -750,3 +751,119 @@ the time is spent simply finding the problematic commit.
 
 More information is in @ref{Regression tests}.
 
+@subheading git bisect setup
+
+We need to set up the bisect for each problem we want to
+investigate.
+
+Suppose we have an input file which compiled in version 2.13.32,
+but fails in version 2.13.38 and above.
+
+@enumerate
+@item
+Begin the process:
+
+@example
+git bisect start
+@end example
+
+@item
+Give it the earliest known bad tag:
+
+@example
+git bisect bad release/2.13.38-1
+@end example
+
+(you can see tags with: @code{git tag} )
+
+@item
+Give it the latest known good tag:
+
+@example
+git bisect good release/2.13.32-1
+@end example
+
+You should now see something like:
+@example
+Bisecting: 195 revisions left to test after this (roughly 8 steps)
+[b17e2f3d7a5853a30f7d5a3cdc6b5079e77a3d2a] Web: Announcement
+update for the new "LilyPond Report"
+@end example
+
+@end enumerate
+
+@subheading git bisect actual
+
+@enumerate
+
+@item
+Compile the source:
+
+@example
+make
+@end example
+
+@item
+Test your input file:
+
+@example
+out/bin/lilypond test.ly
+@end example
+
+@item
+Test results?
+
+@itemize
+@item
+Does it crash, or is the output bad?  If so:
+
+@example
+git bisect bad
+@end example
+
+@item
+Does your input file produce good output?  If so:
+
+@example
+git bisect good
+@end example
+
+@end itemize
+
+@item
+Once the exact problem commit has been identified, git will inform
+you with a message like:
+
+@example
+6d28aebbaaab1be9961a00bf15a1ef93acb91e30 is the first bad commit
+%%% ... blah blah blah ...
+@end example
+
+If there is still a range of commits, then git will automatically
+select a new version for you to test.  Go to step #1.
+
+@end enumerate
+
+@subheading Recommendation: use two terminal windows
+
+@itemize
+@item
+One window is open to the @code{build/} directory, and alternates
+between these commands:
+
+@example
+make
+out/bin/lilypond test.ly
+@end example
+
+@item
+One window is open to the top source directory, and alternates
+between these commands:
+
+@example
+git bisect good
+git bisect bad
+@end example
+
+@end itemize
+
index 4d014836a425f0f504302c92b28119a906f086aa..e0ea3f6554590272b232c0d8fa35f1bb6199080d 100644 (file)
@@ -29,7 +29,8 @@ helpful users who may have never created a patch before.}
 @node Lilydev
 @section Lilydev
 
-text.
+This section discusses how to install and use the Ubuntu LilyPond
+Development Remix.
 
 @menu
 * Installing lilydev::
@@ -63,7 +64,9 @@ Download the Ubuntu LilyPond Developer Remix disk image:
 
 @advanced{Some users might want these files, but if you don't
 recognize what they are, then you don't want them:
+@*
 @uref{http://files.lilynet.net/ubuntu-lilydev-remix-1.0.iso.md5}
+@*
 @uref{http://files.lilynet.net/ubuntu-lilydev-remix-1.0.iso.torrent}
 }
 
@@ -446,13 +449,7 @@ you bookmark the resulting page:
 firefox ~/lilypond-git/build/out-www/offline-root/index.html
 @end example
 
-@subsubheading Other options
-
-To select different build options, or isolate certain parts of the
-build, or to use multiple CPUs while building, read the rest of
-this chapter.
-
-@subsubheading Installing LilyPond with lilydev
+@subsubheading Installing
 
 Don't.  There is no reason to install lilypond within lilydev.
 All development work can (and should) stay within the
@@ -460,6 +457,17 @@ All development work can (and should) stay within the
 or typesetting work should be done with an official GUB release.
 
 
+@subsubheading Problems and other options
+
+To select different build options, or isolate certain parts of the
+build, or to use multiple CPUs while building, read
+@ref{Compiling}.
+
+In particular, contributors working on the documentation should be
+aware of some bugs in the build system, and should read the
+workarounds in @ref{Generating documentation}.
+
+
 @node Now start work!
 @section Now start work!
 
@@ -467,11 +475,22 @@ Lilydev users may now skip to the chapter which is aimed at
 their intended contributions:
 
 @itemize
-@item @rcontrib{Documentation work}
-@item @rcontrib{Translating the documentation}
-@item @rcontrib{Website work}
-@item @rcontrib{Regression tests}
-@item @rcontrib{Programming work}
+@item @ref{Documentation work}
+@item @ref{Translating the documentation}
+@item @ref{Website work}
+@item @ref{Regression tests}
+@item @ref{Programming work}
+@end itemize
+
+These chapters are mainly intended for people not using LilyDev,
+but they contain extra information about the
+@qq{behind-the-scenes} activities.  We recommend that you read
+these at your leisure, a few weeks after beginning work with
+LilyDev.
+
+@itemize
+@item @ref{Working with source code}
+@item @ref{Compiling}
 @end itemize
 
 
index 0c9093b4b89893bcff84de8ed303b08cfab761c2..2695f1cfc92c3a76c474de713b811bc3b8738d71 100644 (file)
@@ -182,34 +182,60 @@ not caused problems with previously working code.  The comparison
 is made automatically upon compiling the regression test suite
 twice.
 
-Before making changes, a baseline should be established by running:
+@enumerate
+
+@item
+Before making changes, a baseline should be established by
+running:
 
 @example
 make test-baseline
 @end example
 
-After making the changes, the code should be checked by running:
+@item
+Make your changes, or apply the patch(es) to consider.
+
+@item
+Compile the source with @samp{make} as usual.
+
+@item
+Check for unintentional changes to the regtests:
 
 @example
 make check
 @end example
 
-After @samp{make@tie{}check} is complete, a regression test comparison
-will be available at @file{out/test-results/index.html}.
+After this has finished, a regression test comparison will be
+available at:
+
+@example
+out/test-results/index.html
+@end example
+
 For each regression test that differs between the baseline and the
-changed code, a regression test entry will displayed.  Ideally, the
-only changes would be the changes that you were working on.  If
-regressions are introduced, they must be fixed before committing the
-code.
+changed code, a regression test entry will displayed.  Ideally,
+the only changes would be the changes that you were working on.
+If regressions are introduced, they must be fixed before
+committing the code.
 
 @warning{
 The special regression test @file{test-output-distance.ly} will always
 show up as a regression.  This test changes each time it is run, and
 serves to verify that the regression tests have, in fact, run.}
 
-Once @samp{make@tie{}test-baseline} and @samp{make@tie{}check} have been
-run, the files that differ between @samp{test-baseline} and @samp{check}
-can be repeatedly examined by doing:
+@item
+If you are happy with the results, then stop now.
+
+If you want to continue programming, then make any additional code
+changes, and continue.
+
+@item
+Compile the source with @samp{make} as usual.
+
+@item
+To re-check files that differed between the initial
+@samp{make@tie{}test-baseline} and your post-changes
+@samp{make@tie{}check}, run:
 
 @example
 make test-redo
@@ -218,8 +244,10 @@ make test-redo
 This updates the regression list at @file{out/test-results/index.html}.
 It does @emph{not} redo @file{test-output-distance.ly}.
 
+@item
 When all regressions have been resolved, the output list will be empty.
 
+@item
 Once all regressions have been resolved, a final check should be completed
 by running:
 
@@ -231,6 +259,8 @@ make check
 This cleans the results of the previous @samp{make@tie{}check}, then does the
 automatic regression comparison again.  
 
+@end enumerate
+
 
 @node Memory and coverage tests
 @section Memory and coverage tests
index 4c45e9c8eefaf9cc5ecbdbbdcb1e2c3e80269f95..13e3b18be8e1362a7132486b569b004677cb5445 100644 (file)
@@ -914,12 +914,11 @@ code review website:
 @uref{http://codereview.appspot.com/}
 @end example
 
-@subsubheading Initial setup
+@subsubheading @command{git-cl} install
 
-@enumerate
+LilyDev users should skip over these @q{install} instructions.
 
-@item
-You must have a gmail account.
+@enumerate
 
 @item
 Install @command{git-cl} by entering:
@@ -934,11 +933,21 @@ symbolic link to the @command{git-cl} and @command{upload.py}
 scripts in one of your PATH directories (such as
 @file{$HOME/bin}).
 
+@end enumerate
+
+@subsubheading @command{git-cl} configuration
+
+LilyDev users should perform these @q{configuration} instructions.
+
+@enumerate
+@item
+You must have a gmail account; please create one if you do not
+have one already.
 
 @item
-Move into the top source directory and then configure
-@command{git cl}.  If you do not understand any question, just
-answer with a newline (CR).
+Move into the top source directory and then configure @command{git
+cl} with the following commands.  If you do not understand any
+question, just answer with a newline (CR).
 
 @example
 cd $HOME/lilypond-git/
index f63ad9b9de2b9c8788e6705178d70470a371f114..0b61134a94a9ad913f9ba38021095ec9b40d340c 100644 (file)
@@ -71,7 +71,7 @@ kompilieren können.
 @warning{Wir empfehlen, dass Beitragende, die Windows oder
 MacOS X benutzen, @strong{nicht} ihre eigene Entwicklungsumgebung
 einrichten, sondern anstattdessen lilybuntu benutzen, welches
-besprochen ist in @rcontribnamed{Quick start,Schnellstart}.
+besprochen ist in @rcontribnamed{Quick start,Schnellstart}.}
 
 Beitragende, die Linux oder FreBSD benutzen, können auch lilybuntu
 einsetzen, aber wenn Sie Ihre eigene Entwicklungsumgebung einrichten
index 7d2a71fd98f4f7f539914dd02a89d2dc728ff686..adbe27dc6c2363b409a86fbd6b273c8a9ff9e837 100644 (file)
@@ -8,7 +8,7 @@
     Guide, node Updating translation committishes.
 @end ignore
 
-@c \version "2.13.36"
+@c \version "2.13.46"
 
 @c Translators: Till Paala
 
@@ -514,7 +514,10 @@ mynotes = {
     \mynotes
   }
   \new TabStaff {
-    \set TabStaff.stringTunings = #'(21 14 7 0)
+    \set TabStaff.stringTunings = #`(,(ly:make-pitch 1 5 0)
+                                    ,(ly:make-pitch 1 1 0)
+                                    ,(ly:make-pitch 0 4 0)
+                                    ,(ly:make-pitch 0 0 0))
     \mynotes
   }
 >>
index f602a49f011f5acd3c7634f70acee43a087fc687..0b241f71a159b50dfa88369d9d8aa7d16a67c8dd 100644 (file)
@@ -234,7 +234,12 @@ que no sean números:
 @lilypond[verbatim,quote,relative=1]
 \new TabStaff
 \with {
-  stringTunings = #'(17 14 9 5 2 -3)
+  stringTunings = #`(,(ly:make-pitch 1 3 NATURAL)
+                    ,(ly:make-pitch 1 1 NATURAL)
+                    ,(ly:make-pitch 0 5 NATURAL)
+                    ,(ly:make-pitch 0 3 NATURAL)
+                    ,(ly:make-pitch 0 1 NATURAL)
+                    ,(ly:make-pitch -1 5 NATURAL))
   tablatureFormat = #fret-letter-tablature-format
 }
 \new TabVoice {
index 3f1c817c96e4a657e140de80ff8e4d2a0bb5a23a..3dd5778732795d71ff938f576fa2fabe829c820b 100644 (file)
@@ -8,7 +8,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.13.36"
+@c \version "2.13.46"
 
 @node Instrumentos de cuerda con trastes
 @section Instrumentos de cuerda con trastes
@@ -518,7 +518,10 @@ mynotes = {
     \mynotes
   }
   \new TabStaff {
-    \set TabStaff.stringTunings = #'(21 14 7 0)
+    \set TabStaff.stringTunings = #`(,(ly:make-pitch 1 5 0)
+                                    ,(ly:make-pitch 1 1 0)
+                                    ,(ly:make-pitch 0 4 0)
+                                    ,(ly:make-pitch 0 0 0))
     \mynotes
   }
 >>
index 64fa752c94a4c53319bc3ee6de67068db8d84ddb..108894a76f50fbb34fe03b4835d6bb52c71dfda2 100644 (file)
@@ -542,9 +542,9 @@ menos) estable, hemos escrito un manual para los colaboradores.
 
 @docLinksBare{Guía del colaborador, contributor,
   @rcontribnamed{Top,Guía del colaborador},
-  @manualDevelContributorSplit-es,
-  @manualDevelContributorBig-es, 500 kB,
-  @manualDevelContributorPdf-es, 2.8 MB}
+  @manualDevelContributorSplit,
+  @manualDevelContributorBig, 500 kB,
+  @manualDevelContributorPdf, 2.8 MB}
 
 @divEnd
 
@@ -645,11 +645,11 @@ están en @url{http://lilypond.org}}
 @docLinkPdf{Aprendizaje,learning,@manualDevelLearningPdf-es}
 
 @item
-@docLinkSplit{Glosario,music-glossary,@manualDevelGlossarySplit-es}
+@docLinkSplit{Glosario,music-glossary,@manualDevelGlossarySplit}
 @tab
-@docLinkBig{Glosario,music-glossary,@manualDevelGlossaryBig-es}
+@docLinkBig{Glosario,music-glossary,@manualDevelGlossaryBig}
 @tab
-@docLinkPdf{Glosario,music-glossary,@manualDevelGlossaryPdf-es}
+@docLinkPdf{Glosario,music-glossary,@manualDevelGlossaryPdf}
 
 @item
 @docLinkSplit{Ensayo,essay,@manualDevelEssaySplit-es}
@@ -675,11 +675,11 @@ están en @url{http://lilypond.org}}
 @docLinkPdf{Utilización,usage,@manualDevelUsagePdf-es}
 
 @item
-@docLinkSplit{Fragmentos,snippets,@manualDevelSnippetsSplit-es}
+@docLinkSplit{Fragmentos,snippets,@manualDevelSnippetsSplit}
 @tab
-@docLinkBig{Fragmentos,snippets,@manualDevelSnippetsBig-es}
+@docLinkBig{Fragmentos,snippets,@manualDevelSnippetsBig}
 @tab
-@docLinkPdf{Fragmentos,snippets,@manualDevelSnippetsPdf-es}
+@docLinkPdf{Fragmentos,snippets,@manualDevelSnippetsPdf}
 
 @headitem Poco frecuentes
 
@@ -688,12 +688,12 @@ están en @url{http://lilypond.org}}
 @tab
 @docLinkBig{Web,web,@manualDevelWebBig-es}
 @tab
-@docLinkPdf{Web,web,@manualDevelWebPdf-es}
+@docLinkPdf{Web,web,@manualDevelWebPdf}
 
 @item
-@docLinkSplit{Cambios,changes,@manualDevelChangesSplit-es}
+@docLinkSplit{Cambios,changes,@manualDevelChangesSplit}
 @tab
-@docLinkBig{Cambios,changes,@manualDevelChangesBig-es}
+@docLinkBig{Cambios,changes,@manualDevelChangesBig}
 @tab
 @docLinkPdf{Cambios,changes,@manualDevelChangesPdf-es}
 
@@ -705,11 +705,11 @@ están en @url{http://lilypond.org}}
 @docLinkPdf{Extensiones,extending,@manualDevelExtendingPdf-es}
 
 @item
-@docLinkSplit{Funcionamiento interno,internals,@manualDevelInternalsSplit-es}
+@docLinkSplit{Funcionamiento interno,internals,@manualDevelInternalsSplit}
 @tab
-@docLinkBig{Funcionamiento interno,internals,@manualDevelInternalsBig-es}
+@docLinkBig{Funcionamiento interno,internals,@manualDevelInternalsBig}
 @tab
-@docLinkPdf{Funcionamiento interno,internals,@manualDevelInternalsPdf-es}
+@docLinkPdf{Funcionamiento interno,internals,@manualDevelInternalsPdf}
 
 @ifset web_version
 @headitem Para descargar
index 04cdb6d7b69855f566e0af5f6c129701214837f3..1a1c9febdf71cbac35edb478dc138036f16d8865 100644 (file)
@@ -607,8 +607,8 @@ Référence des propriétés internes :
 @unnumberedsubsubsec Quadrillage temporel
 @translationof Grid lines
 
-@cindex cadrillage temporel
-@cindex temporel, cadrillage
+@cindex quadrillage temporel
+@cindex temporel, quadrillage
 
 @funindex Grid_point_engraver
 @funindex Grid_line_span_engraver
@@ -618,7 +618,7 @@ Vous pouvez tracer des lignes entre les portées, synchronisées avec
 les notes.
 
 LilyPond a recours à deux graveurs distincts afin d'afficher le
-cadrillage@tie{}:  le @code{Grid_point_engraver} se charge de
+quadrillage@tie{}:  le @code{Grid_point_engraver} se charge de
 déterminer l'envergure du crochet, alors que le
 @code{Grid_line_span_engraver} se consacrera au tracé des lignes.
 Les lignes sont par défaut centrées horizontalement sous les notes et
index 58b0fb1d9fcbefa1ad4ff3abfa28eb94ac3902aa..1a8a7ba51076f9fdb9ee636e275212cfb59f8c9c 100644 (file)
@@ -8,7 +8,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.13.36"
+@c \version "2.13.46"
 
 @c Translators: Matthieu Jacquot
 @c Translation checkers: Jean-Charles Malahieude
@@ -479,7 +479,10 @@ mynotes = {
     \mynotes
   }
   \new TabStaff {
-    \set TabStaff.stringTunings = #'(21 14 7 0)
+    \set TabStaff.stringTunings = #`(,(ly:make-pitch 1 5 0)
+                                    ,(ly:make-pitch 1 1 0)
+                                    ,(ly:make-pitch 0 4 0)
+                                    ,(ly:make-pitch 0 0 0))
     \mynotes
   }
 >>
index 52c9484fbc23c54ace06300eb73f19eb7ad9689a..b373eba0644529c9c757233ee8eb52caa9e6f164 100644 (file)
@@ -1,7 +1,7 @@
 @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
 
 @ignore
-    Translation of GIT committish: 97ecad3753202d0b887c669c05a4ced18bca5acb
+    Translation of GIT committish: f662ca41b36ba6f0bf4cf146b7e6e9bc04bd3756
 
     When revising a translation, copy the HEAD committish of the
     version that you are working on.  For details, see the Contributors'
@@ -1037,9 +1037,6 @@ Fichiers d'initialisation :
 @section Travail sur des fichiers texte
 @translationof Working with input files
 
-@untranslated
-
-
 @menu
 * Insertion de fichiers LilyPond::
 * Différentes éditions à partir d'une même source::
@@ -1051,15 +1048,132 @@ Fichiers d'initialisation :
 @subsection Insertion de fichiers LilyPond
 @translationof Including LilyPond files
 
-@untranslated
+@funindex \include
+@cindex inclusion de fichiers
+
+Lorsqu'un projet prend de l'importance en volume, il est judicieux de le
+scinder en plusieurs fichiers, auxquels vous fereez référence avec un
+simple
+
+@example
+\include "autrefichier.ly"
+@end example
+
+Une ligne @code{\include "autrefichier.ly"} dans un fichier revient à
+recopier intégralement le contenu de @file{autrefichier.ly} à l'endroit
+même ou est placée l'instruction @code{\include}.  Vous pouvez par
+exemple écrire un fichier individuel par instrument, puis les regrouper
+pour former le fichier @qq{conducteur}.  Les différentes variables
+définies dans les fichiers séparés seront normalement reprises et
+utilisables dans le fichier formant le conducteur.  Les sections
+balisées dans les fichiers individuels peuvent être réutilisées en
+différents endroit de la partition , comme expliqué à la rubrique
+@ref{Différentes éditions à partir d'une même source}.
+
+Lorsque le fichier auquel il est fait référence se trouve dans le même
+répertoire, donner seulement son nom en argument à la commande
+@code{\include} suffit.  S'il se trouve ailleurs, vous devrez indiquer
+le chemin d'accès, absolu ou relatif, en respectant toutefois la syntaxe
+UNIX -- autrement dit, le séparateur de répertoire est une oblique
+normale @code{/} et non l'oblique inverse @code{\} de DOS/Windows.  Par
+exemple, si le fichier @file{truc.ly} se trouve dans le répertoire
+supérieur au répertoire de travail, la ligne devra être
+
+@example
+\include "../stuff.ly"
+@end example
+
+@noindent
+ou bien, si les fichiers correspondant aux parties d'orchestre se
+trouvent dans le sous-répertoire @file{parties} relativement au
+répertoire courant, vous devrez mentionner
+
+@example
+\include "parties/VI.ly"
+\include "parties/VII.ly"
+... etc.
+@end example
+
+Les fichiers à inclure peuvent eux-même contenir des instructions
+@code{\include}.  Ces instructions @code{\include} de second niveau ne
+pourront, par défaut, être interprétées qu'une fois intégrées dans le
+fichier principal@tie{}; leur argument doit donc comporter le chemin
+relativement au fichier principal et non par rapport au fichier dan
+lesquel cette inclusion est mentionnée.  Vous pouvez toutefois influer
+sur ce comportement à l'aide de l'option @code{-drelative-includes} en
+ligne de commande ou en ajoutant une clause
+@code{@w{#(ly:set-option 'relative-includes #t)}} en tête du fichier
+principal.  Une fois @code{relative-include} activé, le chemin à suivre
+pour chacune des commandes @code{\include} sera pris relativement au
+fichier qui la contient.
+
+Vous pouvez inclure des fichiers dont vous spécifierez le chemin d'accès
+sur la ligne de commande au moment de lancer la compilation. L'appel à
+ces fichiers ne mentionnerra alors que leur nom.  Par exemple, si vous
+voulez compiler avec cette méthode le fichier @file{principal.ly} qui
+inclut des fichiers situés dans le sous-répertoire @file{parties},
+placez vous dans le répertoire contenant @file{principal.ly}, puis tapez
+
+@example
+lilypond --include=parties principal.ly
+@end example
+
+tout en ayant bien dans @file{principal.ly}
+
+@example
+\include "VI.ly"
+\include "VII.ly"
+... etc
+@end example
+
+Lorsqu'un fichier est voué à être inclus dans nombre de partitions, vous
+pouvez le placer dans le répertoire de LilyPond @file{../ly}.
+Attention@tie{}: ce répertoire varie selon votre installation, comme
+indiqué au chapitre @rlearning{Autres sources de documentation}.  Ce
+fichier sera inclus dès lors que vous fournirez uniquement son nom en
+argument à la fonction @code{\include}.  C'est par exemple le cas du
+fichier de définition particulier @file{gregorian.ly}.
+
+Au moment où vous lancez LilyPond, un certain nombre de fichiers se
+retrouvent inclus par défaut@tie{}; il suffit d'activer le mode verbeux
+en faisant @code{lilypond --verbose} pour s'en rendre compte.  Vous
+verrez ainsi défiler, en plus de nombreuses informations, le nom d'un
+certain nombre de fichier et de chemins d'accès.  Les fichiers les plus
+important sont mentionnés au chapitre
+@rlearning{Autres sources de documentation}.  Si vous venez à les
+modifier, rappelez-vous qu'ils seront écrasés à l'installation d'une
+nouvelle version de LilyPond.
+
+Vous trouverez quelques exemples simples d'utilisation de la commande
+@code{\include} au chapitre @rlearning{Conducteurs et parties}.
+
+
+@seealso
+Manuel d'initiation :
+@rlearning{Autres sources de documentation},
+@rlearning{Conducteurs et parties}.
+
+
+@knownissues
+
+Lorsque vous incluez un fichier qui porte le même nom que l'un des
+fichiers d'initialisation de LilyPond, le fichier de la distribution de
+LilyPond aura préséance.
 
 
 @node Différentes éditions à partir d'une même source
 @subsection Différentes éditions à partir d'une même source
 @translationof Different editions from one source
 
-@untranslated
-
+Différents mécanismes permettent de générer plusieurs versions d'une
+partition à partir d'une même source.  Les variables -- ou
+idendificateurs -- sont sûrement le moyen le plus simple de combiner de
+différente manière des passages relativement longs, alors que les
+balises permettront de sélectionner de courts fragments selon leur
+utilisation.  Quelle que soit la méthode utilisée, séparer la notation
+de la structure de la partition vous donnera plus de liberté dans
+l'agencement de l'ouvrage final, puisque vous ne reviendrez pas sur la
+musique qui le compose.
 
 @menu
 * Utilisation de variables::
@@ -1070,117 +1184,387 @@ Fichiers d'initialisation :
 @unnumberedsubsubsec Utilisation de variables
 @translationof Using variables
 
-@untranslated
+@cindex variables, utilisation de
+
+Un fragment musical identifié par une variable est réutilisable à divers
+endroits de la partition, comme nous l'avons vu à la rubrique
+@rlearning{Organisation du code source avec des variables}.  Par
+exemple, une partition pour chœur @notation{a cappella} comporte souvent
+une réduction pour piano reprenant toutes les voix@tie{}; il s'agit de
+la même musique, et vous ne devrez donc la saisir qu'une seule fois.
+D'autre part, la musique issue de deux variables peut se combiner sur
+une seule portée, comme nous l'avons vu à la rubrique
+@ref{Regroupement automatique de parties}.  Prenons l'exemple
+suivant@tie{}:
+
+@lilypond[verbatim,quote]
+sopranoMusic = \relative c'' { a4 b c b8( a) }
+altoMusic = \relative g' { e4 e e f }
+tenorMusic = \relative c' { c4 b e d8( c) }
+bassMusic = \relative c' { a4 gis a d, }
+allLyrics = \lyricmode {King of glo -- ry }
+<<
+  \new Staff = "Soprano" \sopranoMusic
+  \new Lyrics \allLyrics
+  \new Staff = "Alto" \altoMusic
+  \new Lyrics \allLyrics
+  \new Staff = "Tenor" {
+    \clef "treble_8"
+    \tenorMusic
+  }
+  \new Lyrics \allLyrics
+  \new Staff = "Bass" {
+    \clef "bass"
+    \bassMusic
+  }
+  \new Lyrics \allLyrics
+  \new PianoStaff <<
+    \new Staff = "RH" {
+      \set Staff.printPartCombineTexts = ##f
+      \partcombine
+      \sopranoMusic
+      \altoMusic
+    }
+    \new Staff = "LH" {
+      \set Staff.printPartCombineTexts = ##f
+      \clef "bass"
+      \partcombine
+      \tenorMusic
+      \bassMusic
+    }
+  >>
+>>
+@end lilypond
+
+Générer une partition chorale ou la réduction pour piano ne requiert que
+de modifier la structure des éléments, sans aucunement toucher à la
+musique.
+
+Dans le cas d'une partition relativement longue, vous pouvez isoler la
+définition des différentes variables dans des fichiers séparés que vous
+rappellerez ensuite, comme indiqué à la rubrique
+@ref{Insertion de fichiers LilyPond}.
 
 
 @node Utilisation de balises
 @unnumberedsubsubsec Utilisation de balises
 @translationof Using tags
+
 @funindex \tag
+@funindex \keepWithTag
+@funindex \removeWithTag
 @cindex tag
+@cindex balise
+
+La commande @code{\tag #'@var{partieA}} affecte à une expression
+musicale le nom @var{partieA}.  Les expressions ainsi balisées pourront
+être filtrées par la suite, à l'aide de
+@code{\keepWithTag@tie{}#'@var{nom}} ou
+@code{\removeWithTag@tie{}#'@var{nom}}.  Ces filtres fonctionnent de la
+manière suivante@tie{}:
+
+@multitable @columnfractions .5 .5
+@headitem Filtre
+  @tab Résultat
+
+@item
+Musique balisée précédée de @code{\keepWithTag #'@var{nom}}
+  @tab Musique non balisée et musique balisée par @var{nom} seront
+  incluses@tie{}; la musique balisée autrement est exclue.
 
-La commande @code{\tag} affecte un nom à des expressions musicales.
-Les expressions ainsi balisées pourront être filtrées par la suite.
-Ce mécanisme permet d'obtenir différentes versions à partir d'une même
-source musicale.
+@item
+Musique balisée précédée de @code{\removeWithTag #'@var{nom}}
+ @tab Musique non balisée et fragments appelés autrement que @var{nom}
+ seront inclus@tie{}; la musique balisée par @var{nom} est exclue.
+
+@item
+Musiqeu balisée non précédée de @code{\keepWithTag} ou
+@code{\removeWithTag}
+ @tab Musique balisée et non balisée seront incluses.
+
+@end multitable
+
+Les arguments des commandes @code{\tag}, @code{\keepWithTag} et
+@code{\removeWithTag} doivent être un symbole (tel que
+@code{#'conducteur} ou @code{#'partie}), suivi d'une expression
+musicale.
 
 Dans l'exemple qui suit, nous obtenons deux versions du même extrait,
 l'une pour le conducteur, l'autre pour l'instrumentiste, et qui
-comportera les ornements.
+comportera les ornements développés.
 
-@example
-c1
-<<
-  \tag #'partie <<
-    R1 \\
-    @{
-      \set fontSize = #-1
-      c4_"cue" f2 g4 @}
-  >>
-  \tag #'conducteur R1
->>
-c1
-@end example
+@lilypond[verbatim,quote]
+music = \relative g' {
+  g8. c32 d
+  \tag #'trills { d8.\trill }
+  \tag #'expand { \repeat unfold 3 { e32 d } }
+  c32 d
+ }
+
+\score {
+  \keepWithTag #'trills \music
+}
+\score {
+  \keepWithTag #'expand \music
+}
+@end lilypond
 
 @noindent
-Ce principe peut s'appliquer aux articulations, textes, etc.  Il
-suffit de positionner
+Il est parfois plus aisé d'exclure des fragments@tie{}:
+
+@lilypond[verbatim,quote]
+music = \relative g' {
+  g8. c32 d
+  \tag #'trills { d8.\trill }
+  \tag #'expand {\repeat unfold 3 { e32 d } }
+  c32 d
+ }
+
+\score {
+  \removeWithTag #'expand
+  \music
+}
+\score {
+  \removeWithTag #'trills
+  \music
+}
+@end lilypond
+
+Ce principe de filtrage peut s'appliquer aux articulations, textes, etc.
+Il suffit de positionner
 
 @example
--\tag #@var{votre-balise}
+-\tag #@var{ma-balise}
 @end example
 
 @noindent
-avant l'articulation, comme ici :
+avant l'articulation ou le texte, comme ici :
 
 @example
-c1-\tag #'part ^4
+c1-\tag #'doigt ^4
+c1-\tag #'gaffe ^"Attention !"
 @end example
 
 @noindent
-Ceci définira une note avec une indication de doigté conditionnelle.
+Ceci définira une note avec une indication conditionnelle de doigté ou
+un texte.
 
-@cindex keepWithTag
-@cindex removeWithTag
-C'est grâce aux commandes @code{\keepWithTag} et @code{\removeWithTag}
-que vous filtrerez les expressions balisées.  Par exemple :
+Vous pouvez baliser différemment la même expression musicale en
+saisissant plusieurs @code{\tag}@tie{}:
 
-@example
+@lilypond[quote,verbatim]
+music = \relative c'' {
+  \tag #'a \tag #'both { a4 a a a }
+  \tag #'b \tag #'both { b4 b b b }
+}
 <<
-  @var{de la musique}
-  \keepWithTag #'score @var{de la musique}
-  \keepWithTag #'part @var{de la musique}
+\keepWithTag #'a \music
+\keepWithTag #'b \music
+\keepWithTag #'both \music
 >>
-@end example
+@end lilypond
 
-@noindent
-donnerait :
+L'application concomitante de plusieurs filtres @code{\removeWithTag} à
+la même expression musicale permet d'exclure plusieurs balisages@tie{}:
 
-@lilypondfile[ragged-right,quote]{tag-filter.ly}
+@lilypond[verbatim,quote]
+music = \relative c'' {
+\tag #'A { a4 a a a }
+\tag #'B { b4 b b b }
+\tag #'C { c4 c c c }
+\tag #'D { d4 d d d }
+}
+{
+\removeWithTag #'B
+\removeWithTag #'C
+\music
+}
+@end lilypond
 
-Les arguments de la commande @code{\tag} doivent être un symbole (tel
-que @code{#'score} ou @code{#'part}), suivi d'une expression musicale.
-Vous pouvez utiliser de multiples balises dans un morceau en
-saisissant plusieurs @code{\tag}.
+L'application de plus d'un filtre @code{\keepWithTag} à la même
+expression musicale aboutit à l'exclusion de @b{tous} les balisages.
+En effet, si le premier filtre exclut tous les autres balisages,
+l'application du second exclura les effets du premier.
 
-@example
-\tag #'original-part \tag #'transposed-part @dots{}
-@end example
 
-@ignore
-FIXME
 @seealso
-Exemples : @lsr{parts,tag@/-filter@/.ly}
-@end ignore
+Manuel d'initiation :
+@rlearning{Organisation du code source avec des variables}.
+
+Manuel de notation :
+@ref{Regroupement automatique de parties},
+@ref{Insertion de fichiers LilyPond}.
+
 
+@ignore
+@c This warning is more general than this placement implies.
+@c Rests are not merged whether or not they come from tagged sections.
+@c Should be deleted?  -td
 
 @knownissues
 
 Lorsqu'elles comportent des silences, ceux-ci ne seront pas fusionnés
 si vous imprimez une partition avec les deux sections balisées.
 
+@end ignore
+
 
 @node Codage du texte
 @subsection Codage du texte
 @translationof Text encoding
 
-@untranslated
+@cindex Unicode
+@cindex UTF-8
+@cindex non-ASCII characters
+
+LilyPond utilise le jeu de caractères défini par le consortium Unicode
+et la norme ISO/CEI@tie{}10646.  Chaque caractère est identifié par un
+nom unique et associé à un point de code, ce qui permet dans l'absolu de
+couvrir tous les langages.  Unicode permet de coder tous les caractères
+utilisés par toutes les langues écrites du monde.  LilyPond utilise le
+codage UTF-8 (UTF pour @emph{Unicode Transformation Format}) qui permet
+de représenter les caractères latins sur un octet et les autres sur une
+longueur allant jusqu'à quatre octets.
+
+L'apparence réelle des caractères est déterminée par les glyphes ou
+graphèmes tels que définis dans les différentes polices disponibles.
+Une police, ou une fonte, définit la mise en correspondance d'un
+sous-ensemble de points de code unicode en glyphes.  LilyPond recourt à
+la bibliothèque Pango pour assurer le rendu des textes multilingues.
+
+LilyPond n'effectue aucune conversion d'encodage que ce soit.  Ceci
+implique donc que tout texte, qu'il s'agisse d'un titre, de paroles ou
+même d'instruction musicale, comportant des caractères non ASCII soit
+codé en UTF-8.  Le plus sûr moyen de saisir du texte de la sorte
+consiste à utiliser un éditeur supportant l'unicode et à enregistrer vos
+fichier en UTF-8.  C'est le cas pour la plupart des éditeurs actuels,
+que ce soit vim, Emacs, jEdit et GEdit.  Tous les systèmes Windows
+postérieurs à NT utilisent Unicode en natif@tie{}; même Notepad est
+capable d'éditer et sauvegarder un fichie en UTF-8 -- sans parler de
+l'excellente alternative qu'est BabelPad.
+
+La compilation d'un fichier LilyPond comportant des caractères non ASCII
+qui n'aurait pas été enregistré dans l'encodage UTF-8 vous renverra
+l'erreur
+
+@example
+FT_Get_Glyph_Name () erreur : invalid argument
+@end example
+
+Voici un exemple utilisant du texte en cyrilique, en hébreux et en
+portugais.
+
+@lilypond[quote]
+%c No verbatim here as the code does not display correctly in PDF
+% Cyrillic
+bulgarian = \lyricmode {
+  Жълтата дюля беше щастлива, че пухът, който цъфна, замръзна като гьон.
+}
+
+% Hebrew
+hebrew = \lyricmode {
+  זה כיף סתם לשמוע איך תנצח קרפד עץ טוב בגן.
+}
+
+% Portuguese
+portuguese = \lyricmode {
+  à vo -- cê uma can -- ção legal
+}
+
+\relative c' {
+  c2 d e f g f e
+}
+\addlyrics { \bulgarian }
+\addlyrics { \hebrew }
+\addlyrics { \portuguese }
+@end lilypond
+
+Lorsque vous avez besoin d'un caractère dont vous connaissez le point de
+code mais que votre éditeur ne permet pas de saisir directement, vous
+pouvez utitliser les instructions @code{\char@tie{}##xhhhh} ou
+@code{\char@tie{}#dddd} au sein d'un bloc @code{\markup} -- @code{hhhh}
+et @code{dddd} correspondant respectivement à la valeur hexadécimale ou
+décimale.  Même s'il est inutile de saisir les zéros superflus, il est
+de bon ton de stipuler les quatre caractères formant la représentation
+hexadécimale.  Évitez cependant l'encodage UTF-8 d'un point de code
+après un @code{\char}@tie{}; les encodages UTF-8 comprennent un bit
+supplémentaire indiquant le nombre d'octets.  Une table de
+correspondance entre les codes Unicode et le nom des caractères ainsi
+que leur code hexadécimal est disponible sur le site du consortium
+Unicode, @uref{http://www.unicode.org/}.
+
+Par exemple, @code{\char ##x03BE} et @code{\char #958} correspondent
+tous deux au caractère unicode U+03BE, dénommé @qq{Greek Small Letter
+Xi}.
+
+Quel que soit le point de code spécifié de cette manière, il ne vous
+sera alors pas nécessaire d'enregistrer votre fichier en UTF-8.  Vous
+devrez toutefois disposer d'une fonte contenant ce caractère qui soit
+accessible à LilyPond.
+
+L'exemple suivant illustre la manière d'insérer un caractère sous sa
+forme hexadécimale, à la fois dans un repère, dans une articulation,
+dans des paroles et dans du texte indépendant.
+
+@lilypond[quote,verbatim]
+\score {
+  \relative c'' {
+    c1 \mark \markup { \char ##x03EE }
+    c1_\markup { \tiny { \char ##x03B1 " to " \char ##x03C9 } }
+  }
+  \addlyrics { O \markup { \concat { Ph \char ##x0153 be! } } }
+}
+\markup { "Copyright 2008--2010" \char ##x00A9 }
+@end lilypond
+
+@cindex copyright
+
+Le signe @emph{copyright} dans le champ de titrage consacré s'inscrit de
+la manière suivante@tie{}:
+
+@example
+\header @{
+  copyright = \markup @{ \char ##x00A9 "2008" @}
+@}
+@end example
 
 
 @node Affichage de notation au format LilyPond
 @subsection Affichage de notation au format LilyPond
 @translationof Displaying LilyPond notation
 
-@untranslated
+@funindex \displayLilyMusic
+
+La fonction musicale @code{\displayLilyMusic}, disponible uniquement
+pour un traitement en ligne de commande, permet d'afficher en
+notation LilyPond une expression musicale.  Par exemple,
+
+@example
+@{
+  \displayLilyMusic \transpose c a, @{ c4 e g a bes @}
+@}
+@end example
+
+affichera
+
+@example
+@{ a,4 cis e fis g @}
+@end example
+
+LilyPond affichera le résultat sous forme de message en console, au
+milieu de toutes les informations de compilation.  Afin d'isoler ces
+messages et enregistrer le résultat de la fonction
+@code{\display@{STUFF@}}, pensez à rediriger la sortie vers un fichier.
+
+@example
+lilypond fichier.ly >display.txt
+@end example
 
 
 @node Contrôle des sorties
 @section Contrôle des sorties
 @translationof Controlling output
 
-@untranslated
-
-
 @menu
 * Extraction de fragments musicaux::
 * Ignorer des passages de la partition::
@@ -1192,42 +1576,173 @@ si vous imprimez une partition avec les deux sections balisées.
 @subsection Extraction de fragments musicaux
 @translationof Extracting fragments of music
 
-@untranslated
+LilyPond vous permet d'extraire des fragments d'une partition à l'instar
+du choriste amateur qui alimente son album avec des coupures de
+journaux.
+
+Vous devrez pour cela définir les mesures à découper.  La définition
+suivante, incluse dans votre fichier source,
+
+@verbatim
+\layout {
+  clip-regions
+  = #(list
+      (cons
+       (make-rhythmic-location 5 1 2)
+       (make-rhythmic-location 7 3 4)))
+}
+@end verbatim
+
+@noindent
+vous permettra d'extraire un fragment compris entre le milieu de la
+cinquième mesure et quelque part dans la septième.  Le triplet
+@code{5@tie{}1@tie{}2} signifie@tie{}: après la durée d'une blanche dans
+la mesure 5@tie{}; le @code{7@tie{}3@tie{}4} signifie quant à lui que
+l'on s'arrête à la mesure 7, après la durée de trois noires.
+
+Rien ne vous empêche d'extraire plusieurs fragments, dès lors que vous
+définissez dans la liste d'autres paires d'emplacements ryhtmiques.
+
+Cette fonctionnalité n'est toutefois effective que lorsque vous lancez
+LilyPond avec l'option @code{-dclip-systems}.  Les @qq{coupures} seront
+générées sous la forme de fichiers EPS, convertis en PDF ou PNG selon le
+format que vous aurez stipulé.
+
+Pour de plus amples informations quant au format des résultats,
+consultez le chapitre @rprogram{Lancement de lilypond}.
 
 
 @node Ignorer des passages de la partition
 @subsection Ignorer des passages de la partition
 @translationof Skipping corrected music
 
-@untranslated
+@funindex skipTypesetting
+@funindex showFirstLength
+@funindex showLastLength
+
+Dans un travail de transcription ou de recopie de la musique, ce qui
+vous intéresse plus particulièrement se situe à la fin, là même où vous
+en êtes dans la notation.  Dans le but de gagner du temps dans le
+processus de correction, vous pouvez @qq{escamoter} le reste et ne
+générer que les dernières mesures en insérant
+
+@verbatim
+showLastLength = R1*5
+\score { ... }
+@end verbatim
+
+@noindent
+dans votre fichier source.  Ceci aura pour effet de ne générer que les
+cinq dernières mesures -- si tant est que le morceau soit à 4/4 -- de
+tous les @code{\score} de votre fichier.  Dans le cas d'un œuvre
+conséquente, cette pratique s'avère fort utile puisqu'elle évite de tout
+générer.  Vous pourriez aussi être amené à retravailler le début d'une
+œuvre, pour y ajouter une partie par exemple, auquel cas c'est la
+propriété @code{showFirstLength} que vous utiliserez.
+
+Vous pouvez contrôler très finement les parties à escamoter, grâce u
+commutateur @code{Score.skipTypesetting}@tie{}: lorsqu'il est activé,
+aucune gravure n'est réalisée.
+
+Ce commutateur agit aussi sur la sortie MIDI.  Notez bien que tous les
+événements seront escamotés, y compris les changements de tempo ou
+d'instrument -- vous voilà prévenu@tie{}!
+
+@lilypond[quote,relative=2,ragged-right,verbatim]
+c8 d
+\set Score.skipTypesetting = ##t
+e8 e e e e e e e
+\set Score.skipTypesetting = ##f
+c8 d b bes a g c2
+@end lilypond
+
+Dans le cadre de musique polyphonique, @code{Score.skipTypesetting}
+s'applique à toutes les voix et portées.  Vous gagnerez donc encore plus
+de temps.
 
 
 @node Formats de sortie alternatifs
 @subsection Formats de sortie alternatifs
 @translationof Alternative output formats
 
-@untranslated
+@cindex scalable vector graphics
+@cindex SVG, format de sortie
+@cindex encapsulated postscript
+@cindex EPS, format de sortie
+
+En matière de partition imprimable, LilyPond génère par défaut des
+documents au format PstScript (PS) et Portable Document Format (PDF).
+Vous pouvez aussi obtenir des documents au format Scalable Vector
+Graphics (SVG), Encapsulated PostScript (EPS) ou Portable Network
+Graphics (PNG) dès lors que vous aurez lancé LilyPond en ligne de
+commande avec l'option @i{ad hoc} -- voir 
+@rprogram{Options en ligne de commande pour lilypond} à ce sujet.
 
 
 @node Changement des fontes musicales
 @subsection Changement des fontes musicales
 @translationof Replacing the notation font
 
-@untranslated
+Gonville est ube alternative à la fonte Feta que LilyPond utilise par
+défaut.  Vous pouvez la télécharger à partir de
+@example
+@uref{http://www.chiark.greenend.org.uk/~sgtatham/gonville/ ,http://www.chiark.greenend.org.uk/~sgtatham/gonville/}
+@end example
+
+Voici quelques mesures utilisant la police Gonville@tie{}:
+
+@c NOTE: these images are a bit big, but that's important
+@c       for the font comparison.  -gp
+@sourceimage{Gonville_after,,,}
+
+Et ces même mesures avec la police de LilyPond, Feta@tie{}:
+
+@sourceimage{Gonville_before,,,}
 
 
 @subsubheading Instructions d'installation pour MacOS
 @translationof Installation Instructions for MacOS
 
-@untranslated
+Téléchargez puis décompressez l'archive zip.  Recopiez le répertoire
+@code{lilyfonts} dans  @file{@var{SHARE_DIR}/lilypond/current} -- voir
+@rlearning{Autres sources de documentation} à ce sujet.  Renommez le
+répertoire @code{fonts} qui s'y trouve en @code{fonts_orig}, puis les
+répertoire @code{lilyfonts} en @code{fonts}.  Il vous suffira, pour
+retrouver la fonte Feta, de renommer @code{fonts_orig} en @code{fonts}.
+
+
+@seealso
+Manuel d'initiation :
+@rlearning{Autres sources de documentation}.
+
+@knownissues
+
+Gonville ne permet pas de générer de la notation ancienne.  Consultez le
+site de l'auteur pour de plus amples informations ainsi qu'à propos des
+conditions d'utilisation.
 
 
 @node Sortie MIDI
 @section Sortie MIDI
 @translationof MIDI output
 
-@untranslated
+MIDI (Musical Instrument Digital Interface) constitue un standard en
+matière de connexion et de contrôle des instruments électroniques.  Un
+fichier MIDI contient une série de notes réparties dans différentes
+pistes.  Il ne s'agit en rien d'un fichier sonore@tie{}; il vous faudra
+un logiciel capable de traduire ces séries de notes en sons.
+
+Vous pouvez convertir vos partition en fichier MIDI de manière à
+entendre ce que vous avez saisi.  Ceci vous permet de contrôler aisément
+ce que vous avez saisi@tie{}: octaves et altérations erronées heuteront
+votre oreille avertie grâce au MIDI.
 
+@c TODO Check this
+Dans une sortie MIDI, LilyPond alloue un canal à chaque portée, plus un
+pour les réglages globaux.  Par voie de conséquence, un fichier MIDI ne
+peut comporter au maximmum que quinze portées (quatorze en l'absence de
+percussions)@tie{}; les portées supplémentaires seront tout simplement
+silencieuses.
 
 @menu
 * Création de fichiers MIDI::
@@ -1238,36 +1753,303 @@ si vous imprimez une partition avec les deux sections balisées.
 * MIDI et percussions::
 @end menu
 
+
 @node Création de fichiers MIDI
 @subsection Création de fichiers MIDI
 @translationof Creating MIDI files
 
-@untranslated
+LilyPond génèrera un fichier MIDI dès que vous ajouterez un bloc
+@code{\midi} à la structure de votre partition, comme ici@tie{}:
+
+@example
+\score @{
+  @var{...musique...}
+  \midi @{ @}
+@}
+@end example
+
+Lorsque le bloc @code{\score} contient un bloc @code{\midi} mais pas de
+bloc @code{\layout}, LilyPond ne produira qu'une sortie MIDI.  Si donc
+vous avez besoin aussi d'un support visuel, vous devrez aussi mentionner
+un bloc @code{\layout}.
+
+@example
+\score @{
+  @var{...musique...}
+  \midi @{ @}
+  \layout @{ @}
+@}
+@end example
+
+Hauteurs, durées, liaisons de prolongation, nuances et changements de
+tempo seront interprétés et traduits en événements MIDI.  Les
+indications de nuances, crescendos et decrescendos sont traduits en
+niveau de volume@tie{}; les indications sous la forme d'une fraction
+déterminée du volume disponible, et crescendos et decrescendos sous la
+forme d'une progression linéaire entre les deux extrêmes.  Le rendu des
+indications de nuance peut être désactivé pour le MIDI -- voir
+@ref{Le bloc MIDI}.
+
+Le tempo initial ainsi que ses changements sont normalement indiqués au
+fil de la notation à l'aide de la commande @code{\tempo}@tie{}; ils
+seront retranscrits dans le fichier MIDI.  La commande @code{\tempo}
+donne lieu à l'impression d'une indication métronomique que vous pouvez
+toutefois rendre invisible, comme indiqué à la rubrique
+@ref{Indication métronomique}.  Une autre manière de spécifier le tempo
+initial pour un fichier MIDI est indiquée plus avant -- voir
+@ref{Le bloc MIDI}.
+
+En raison de certaines limitations de Windows, les fichiers MIDI doivent
+y porter l'extension @code{.mid}.  D'autres systèmes utilisent
+l'extension @code{.midi}.  Si besoin est, placez la ligne suivante au
+début de votre fichier source, avant l'ouverture de tout bloc
+@code{\book}, @code{\bookpart} ou @code{\score}@tie{}:
+
+@example
+#(ly:set-option 'midi-extension "midi")
+@end example
+
+Cette ligne déterminera @code{.midi} comme extension par défaut pour les
+fichiers MIDI.
+
+Vous pouvez aussi le faire en ligne de commande@tie{}:
+
+@example
+lilypond … -dmidi-extension=midi fichierLily.ly
+@end example
 
 
 @unnumberedsubsubsec Noms d'instrument
 @translationof Instrument names
 
+@cindex instrument, nom d'
+@funindex Staff.midiInstrument
+
+L'instrument MIDI affecté à un canal particulier est déterminé par la
+propiété @code{Staff.midiInstrument}.  Vous pouvez choisr l'un des
+instruments répertoriés à l'annexe @ref{Instruments MIDI}.
+
+@example
+\new Staff @{
+  \set Staff.midiInstrument = #"glockenspiel"
+  @var{...notes...}
+@}
+@end example
+
+@example
+\new Staff \with @{midiInstrument = #"cello"@} @{
+  @var{...notes...}
+@}
+@end example
+
+Lorsque l'instrument choisi ne correspond pas exactement à l'une des
+dénominations consacrées, LilyPond le replacera par un piano de concert
+(@code{"acoustic grand"}).
+
+
+@snippets
+
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
+{changing-midi-output-to-one-channel-per-voice.ly}
+
+@knownissues
+
+@c In 2.11 the following no longer seems to be a problem -td
+@ignore
+Un (de)crescendo non terminé ne sera pas correctement rendu en MIDI --
+il y a nécessairement du silence.  Il vous faut donc lui donner une fin
+explicite.  Par exemple,
+
+@example
+@{ a4\< b c d\f @}
+@end example
+
+@noindent
+ne fonctionnera pas correctement, contrairement à
+
+@example
+@{ a4\< b c d\!\f @}
+@end example
+@end ignore
+
+Un changement de volume ne peut intervenir que sur le démarrage d'une
+note.  C'est la raison pour laquelle la succession d'un crescendo et
+d'un diminuendo ne peut se produire sur une même note.
+
+Certains lecteurs MIDI ne rendent pas correctement les changements de
+tempo.  MS Windows Media Player et 
+@uref{http://@/timidity@/.sourceforge@/.net/,timidity} le font sans
+problème.
+
 
 @node Le bloc MIDI
 @subsection Le bloc MIDI
 @translationof MIDI block
 
-@untranslated
+Dès lors que vous désirez obtenir une sortie MIDI, vous devrez inscrire
+un bloc @code{\midi} au sein du bloc @code{\score}.  Son fonctionnement
+est comparable à ce lui du bloc @code{\layout}, voire plus simple.  Si
+le bloc @code{\midi} est la plupart du temps laissé vide, il peut
+contenir des aménagements pour certains contextes, la définition de
+contextes particuliers ou du code permettant de déterminer la valeur de
+certianes propriétés.  L'exemple suivant détermine le tempo initial du
+fichier MIDI tout en se passant de son indication sur la partition
+imprimée.
+
+@example
+\score @{
+  @var{...musique...}
+  \midi @{
+    \context @{
+      \Score
+      tempoWholesPerMinute = #(ly:make-moment 72 4)
+    @}
+  @}
+@}
+@end example
+
+Ici, le tempo est fixé à 72 noires à la minute.  Spécifier un tempo de
+la sorte ne permet pas de doner une valeur pour une note pointée.  Vous
+devrez, en pareil cas, subdiviser la note pointée en durée plus courte.
+Par exemple, indiquer 90 à la noire pointée est équivalent à spécifier
+270 croches à la minute@tie{}:
+
+@example
+tempoWholesPerMinute = #(ly:make-moment 270 8)
+@end example
+
+@cindex MIDI et définition de contexte
+@cindex contexte, définition en MIDI
+
+La syntaxe permettant de définir un contexte pour le @code{\midi} est en
+tout point identique à celle que vous utilisez dans le bloc
+@code{\layout}, à ceci près que le @qq{graveur} est remplacé par un
+@qq{interprète}.  Les différents contextes disponibles en matière de
+MIDI sont répertoriés dans le fichier d'initialisation
+@file{../ly/performer-init.ly} -- pour plus de détail, voir
+@rlearning{Autres sources de documentation}.
+Si vous voulez vous passer des nuances dans votre fichier MIDI, il vous
+suffit d'insérer les lignes suivantes dans votre bloc
+@code{\midi@{ @}}.
+
+@example
+\midi @{
+  ...
+  \context @{
+    \Voice
+    \remove "Dynamic_performer"
+  @}
+@}
+@end example
+
+LilyPond ne génèrera de sortie MIDI que si vous incluez un bloc
+@code{\midi} dans la structure de la partition, initialisée par la
+commande @code{\score}.
+
+@example
+\score @{
+  @{ @dots{}notes@dots{} @}
+  \midi @{ @}
+@}
+@end example
 
 
 @node Contenu de la sortie MIDI
 @subsection Contenu de la sortie MIDI
 @translationof What goes into the MIDI output?
 
-@untranslated
+@c TODO Check grace notes - timing is suspect?
 
 
 @unnumberedsubsubsec Éléments pris en compte dans le MIDI
 @translationof Supported in MIDI
+
+@cindex hauteurs en MIDI
+@cindex MIDI, hauteurs
+@cindex quart de ton en MIDI
+@cindex MIDI, quart de ton
+@cindex microtonalité en MIDI
+@cindex MIDI, microtonalité
+@cindex accords nommés en MIDI
+@cindex MIDI, accords nommés
+@cindex Rythme en MIDI
+@cindex MIDI, Rythme
+@c TODO etc
+
+Un fichier MIDI généré par LilyPond comprendra les éléments de notation
+suivants@tie{}:
+
+@itemize
+@item
+les hauteurs ;
+
+@item
+les microtonalités -- voir @ref{Altérations}.  Leur rendu nécessite
+cependant un lecteur qui prenne en charge la modulation@tie{};
+
+@item
+les accords nommés ;
+
+@item
+le rythme en tant que durée de note, y compris les nolets ;
+
+@item
+les tremolos, exceptés ceux utilisant la syntaxe
+@qq{@code{:}[@var{nombre}]}@tie{};
+
+@item
+les liaisons de prolongation ;
+
+@item
+les indications de nuance
+
+@item
+les crescendos et decrescendos s'étalant sur plusieurs notes@tie{};
+
+@item
+les changements de tempo indiqués par un @code{\tempo}@tie{};
+
+@item
+les paroles.
+@end itemize
+
+
 @unnumberedsubsubsec Éléments non pris en compte dans le MIDI
 @translationof Unsupported in MIDI
 
+@c TODO index as above
+
+LilyPond ne peut générer d'événement MIDI pour les éléments
+suivant@tie{}:
+
+@itemize
+@item
+le rythme indiqué sous forme d'annotation (p.ex. @emph{swing})@tie{};
+
+@item
+les changements de tempo indiqués sous forme d'annotation (sans
+@code{\tempo})@tie{};
+
+@item
+les staccatos et autres articulations ou ornementations@tie{};
+
+@item
+les liaisons d'articulation et de prhasé@tie{};
+
+@item
+les crescendos ou decrescendos sur une sele note@tie{};
+
+@item
+les tremolos indiqués par la syntaxe @qq{@code{:}[@var{nombre}]}@tie{};
+
+@item
+la basse chiffrée
+
+@item
+les accords en microtonalité.
+@end itemize
+
+
 @node Répétitions et MIDI
 @subsection Répétitions et MIDI
 @translationof Repeats in MIDI
@@ -1282,7 +2064,7 @@ d'autre termes, @code{\unfoldRepeats} transforme toutes les reprises
 en reprises de type @code{unfold}.
 
 
-@lilypond[quote,verbatim,fragment,line-width=8.0\cm]
+@lilypond[quote,verbatim]
 \unfoldRepeats {
   \repeat tremolo 8 {c'32 e' }
   \repeat percent 2 { c''8 d'' }
@@ -1295,21 +2077,20 @@ en reprises de type @code{unfold}.
 \bar "|."
 @end lilypond
 
-
 Lorsque l'on veut utiliser @code{\unfoldRepeats} seulement pour le rendu
-MIDI, il faut établir deux blocs @code{\score} : un pour le MIDI, avec
-des reprises explicites, et l'autre pour la partition, avec des reprises
-notées sous forme de barres de reprise, de trémolo ou de symboles de
-pourcentage.  Par exemple
+MIDI, il faut établir deux blocs @code{\score}@tie{}: un pour le MIDI,
+avec des reprises explicites, et l'autre pour la partition, avec des
+reprises notées sous forme de barres de reprise, de trémolo ou de
+symboles de pourcentage.  Par exemple
 
 @example
 \score @{
- @var{..musique..}
- \layout @{ ..  @}
 @var{..musique..}
 \layout @{ ..  @}
 @}
 \score @{
- \unfoldRepeats @var{..musique..}
\midi @{ ..  @}
 \unfoldRepeats @var{..musique..}
 \midi @{ .. @}
 @}
 @end example
 
@@ -1318,22 +2099,300 @@ pourcentage.  Par exemple
 @subsection Gestion des nuances en MIDI
 @translationof Controlling MIDI dynamics
 
-@untranslated
+Les nuances MIDI sont générées par le @code{Dynamic_performer}, affecté
+par défaut au contexte @code{Voice}.  Vous pouvez contrôler à la fois le
+volume général, celui des indications de nuance ainsi que celui des
+différents instruments.
 
 
 @unnumberedsubsubsec Indications de nuance
 @translationof Dynamic marks
+
+Les indications de nuances sont transcrites en fraction du volume MIDI.
+Nous allons, par défaut, de 0,25 pour un @notation{ppppp} à 0,95 pour un
+@notation{fffff}.  Les correspondances entre nuance et fraction de
+volume sont répertoriées dans le fichier @file{../scm/midi.scm} --
+consultez la rubrique @rlearning{Autres sources de documentation} si
+vous ne savez comment le localiser.  Vous pouvez modifier ou étendre ce
+jeu grâce à une fonction qui prendra en argument une indication de
+nuance et renverra la fraction désirée, puis en affectant cette fonction
+à @code{Score.dynamicAbsoluteVolumeFunction}.
+
+Prenons un exemple.  Votre partition comporte un  @notation{rinforzando}
+que vous avez indiqué par @code{\rfz}.  Cette indication de nuance
+n'étant pas répertoriée dans le jeu par défaut, elle ne produira aucun
+effet en MIDI.  Il en sera d'ailleurs de même pour toute indication
+créée de toute pièce à l'aide de l'instruction
+@code{make-dynamic-script}.  Voici comment procéder pour ajuster le
+volume MIDI de ce @notation{rinforzando} que le compositeur a indiqué.
+La fonction Scheme définit une fraction de 0,9 en cas de @notation{rfz},
+et demande d'utiliser la fonction par défaut dans les autre cas.
+
+@lilypond[verbatim,quote]
+#(define (myDynamics dynamic)
+    (if (equal? dynamic "rfz")
+      0.9
+      (default-dynamic-absolute-volume dynamic)))
+
+\score {
+  \new Staff {
+    \set Staff.midiInstrument = #"cello"
+    \set Score.dynamicAbsoluteVolumeFunction = #myDynamics
+    \new Voice {
+      \relative c'' {
+        a4\pp b c-\rfz
+      }
+    }
+  }
+  \layout {}
+  \midi {}
+}
+@end lilypond
+
+Si vous étiez amené à devoir modifier l'intégralité du jeu des
+correspondances, nous vous conseillons d'utiliser la procédure
+@command{default-dynamic-absolute-volume} contenue dans le fichier
+@file{../scm/midi.scm} ansi que la table d'association comme base.  Le
+dernier exemple de cette partie illustre la manière de procéder.
+
+
 @unnumberedsubsubsec Amplitude du volume en MIDI
 @translationof Overall MIDI volume
+
+Les valeurs extrêmes du volume MIDI des nuances se contrôlent à l'aide
+des propriétés @code{midiMinimumVolume} et @code{midiMaximumVolume} qui
+agissent au niveau @code{Score}.  Ces propriétés sont effectives dès
+lors qu'une nuance est indiquée@tie{}; une nuance de départ est donc
+requise pour que le volume soit ajusté dès le début de la partition.
+Vous pouvez alors modifier la fraction correspondant à chaque nuance à
+l'aide de la formule
+
+@example
+midiMinimumVolume + (midiMaximumVolume - midiMinimumVolume) * fraction
+@end example
+
+Voici comment ajuster les nuances tout en limitant l'amplitude du volume
+entre 0,2 et 0,5@tie{}:
+
+@lilypond[verbatim,quote]
+\score {
+  <<
+    \new Staff {
+      \key g \major
+      \time 2/2
+      \set Staff.midiInstrument = #"flute"
+      \new Voice \relative c''' {
+        r2 g\mp g fis~
+        fis4 g8 fis e2~
+        e4 d8 cis d2
+      }
+    }
+    \new Staff {
+      \key g \major
+      \set Staff.midiInstrument = #"clarinet"
+      \new Voice \relative c'' {
+        b1\p a2. b8 a
+        g2. fis8 e
+        fis2 r
+      }
+    }
+  >>
+  \layout {}
+  \midi {
+    \context {
+      \Score
+      tempoWholesPerMinute = #(ly:make-moment 72 2)
+      midiMinimumVolume = #0.2
+      midiMaximumVolume = #0.5
+    }
+  }
+}
+@end lilypond
+
+
 @unnumberedsubsubsec Égalisation de plusieurs instruments (i)
 @translationof Equalizing different instruments (i)
+
+La définition de l'amplitude du volume MIDI au niveau d'un contexte
+@code{Staff} permet de gérer les volumes relatifs entre les différents
+instruments.  Ceci constitue en quelque sorte un égaliseur, ce qui
+permet d'améliorer notablement la qualité de la sortie MIDI.
+
+La clarinette de l'exemple suivant jouera relativement moins fort que la
+flûte.  Rappelez-vous que pour que cela fonctionne correctement, la
+première note de chacun des instruments doit être affublée d'une
+indication de nuance.
+
+@lilypond[verbatim,quote]
+\score {
+  <<
+    \new Staff {
+      \key g \major
+      \time 2/2
+      \set Staff.midiInstrument = #"flute"
+      \set Staff.midiMinimumVolume = #0.7
+      \set Staff.midiMaximumVolume = #0.9
+      \new Voice \relative c''' {
+        r2 g\mp g fis~
+        fis4 g8 fis e2~
+        e4 d8 cis d2
+      }
+    }
+    \new Staff {
+      \key g \major
+      \set Staff.midiInstrument = #"clarinet"
+      \set Staff.midiMinimumVolume = #0.3
+      \set Staff.midiMaximumVolume = #0.6
+      \new Voice \relative c'' {
+        b1\p a2. b8 a
+        g2. fis8 e
+        fis2 r
+      }
+    }
+  >>
+  \layout {}
+  \midi {
+    \context {
+      \Score
+      tempoWholesPerMinute = #(ly:make-moment 72 2)
+    }
+  }
+}
+@end lilypond
+
+
 @unnumberedsubsubsec Égalisation de plusieurs instruments (ii)
 @translationof Equalizing different instruments (ii)
 
+Lorsque les propriétés volume minimum et maximum n'ont pas été définies,
+LilyPond appliquera par défaut une légère égalisation pour quelques
+instruments.  Les instrument concernés ainsi que le niveau d'égalisation
+sont répertoriés dans une table @notation{instrument-equalizer-alist}
+du fichier @file{../scm/midi.scm}.
+
+Vous pouvez remplacer l'égaliseur basique en définissant une nouvelle
+procédure Scheme @code{instrumentEqualizer} au sein du contexte
+@code{Score}.  Cette procédure prend en unique argument le nom d'un
+instrument MIDI et renverra une paire de fractions correspondant au
+minimum et maximum de volume alloué à cet instrument.  Cette
+substitution fonctionne selon le même principe que celui que nous avons
+vu en dédut de chapitre avec @code{dynamicAbsoluteVolumeFunction}.
+L'égaliseur par défaut, @notation{default-instrument-equalizer}, est
+défini dans le fichier @file{../scm/midi.scm}@tie{}; son analyse vous
+aidera à construire votre propre procédure.
+
+Nous allons, dans l'exemple suivant, régler le volume relatif de la
+flûte et de la clarinette -- au même niveau que dans le précédent.
+
+@lilypond[verbatim,quote]
+#(define my-instrument-equalizer-alist '())
+
+#(set! my-instrument-equalizer-alist
+  (append
+    '(
+      ("flute" . (0.7 . 0.9))
+      ("clarinet" . (0.3 . 0.6)))
+    my-instrument-equalizer-alist))
+
+#(define (my-instrument-equalizer s)
+  (let ((entry (assoc s my-instrument-equalizer-alist)))
+    (if entry
+      (cdr entry))))
+
+\score {
+  <<
+    \new Staff {
+      \key g \major
+      \time 2/2
+      \set Score.instrumentEqualizer = #my-instrument-equalizer
+      \set Staff.midiInstrument = #"flute"
+      \new Voice \relative c''' {
+        r2 g\mp g fis~
+        fis4 g8 fis e2~
+        e4 d8 cis d2
+      }
+    }
+    \new Staff {
+      \key g \major
+      \set Staff.midiInstrument = #"clarinet"
+      \new Voice \relative c'' {
+        b1\p a2. b8 a
+        g2. fis8 e
+        fis2 r
+      }
+    }
+  >>
+  \layout { }
+  \midi {
+    \context {
+      \Score
+      tempoWholesPerMinute = #(ly:make-moment 72 2)
+    }
+  }
+}
+@end lilypond
+
+@ignore
+@c Delete when satisfied this is adequately covered elsewhere -td
+
+@n ode Microtones in MIDI
+@s ubsection Microtones in MIDI
+
+@cindex microtones in MIDI
+
+Microtones consisting of half sharps and half flats are exported
+to the MIDI file and render correctly in MIDI players which support
+pitch bending.  See @ref{Note names in other languages}.  Here is
+an example showing all the half sharps and half flats.  It can be
+copied out and compiled to test microtones in your MIDI player.
+
+@lilypond[verbatim,quote]
+\score {
+  \relative c' {
+    c4 cih cis cisih
+    d4 dih ees eeh
+    e4 eih f fih
+    fis4 fisih g gih
+    gis4 gisih a aih
+    bes4 beh b bih
+  }
+  \layout {}
+  \midi {}
+}
+@end lilypond
+@end ignore
+
 
 @node MIDI et percussions
 @subsection MIDI et percussions
 @translationof Percussion in MIDI
 
-@untranslated
+La notation pour percussions recourt généralement à un contexte
+particulier -- le @code{DrumStaff} -- qui permet d'affecter directement
+les instruments concernés au canal@tie{}10 qui leur est réservé.
+
+Certains instruments, tels le xylophone, le marimba, le vibraphone ou
+les timbales, se traitent cependant comme des instruments
+@qq{classiques} puisqu'ils sont capables d'émettre des hauteurs
+différentes@tie{}; leurs notation relève donc d'un contexte @code{Staff}
+standard, et non d'un @code{DrumStaff} pour pouvoir être rendus
+correctement en MIDI.
+
+D'autres percussions, bien que n'émettant qu'un seul son et inclus dans
+le standard @emph{general MIDI}, comme le tom mélodique ou le tambour
+taiko, ne sont pas attachés au canal@tie{}10.  Ces instruments doivent
+donc être saisi dans un contexte @code{Staff}, en utilisant la hauteur
+appropiée.
+
+De nombreux instruments de la famille des percussions, les castagnettes
+par exemple,  n'existent pas dans le standard @emph{general MIDI}.
+L'alternative, bien que peu satisfaisante, consiste à leur attribuer le
+son le plus proche dans la banque standard.
+
+@c TODO Expand with examples, and any other issues
+
+@knownissues
+
+Le standard @emph{general MIDI} ne dispose pas du @emph{rim shot}@tie{};
+LilyPond lui subtitue un @emph{sidestick}.
 
diff --git a/Documentation/fr/texidocs/changing-midi-output-to-one-channel-per-voice.texidoc b/Documentation/fr/texidocs/changing-midi-output-to-one-channel-per-voice.texidoc
new file mode 100644 (file)
index 0000000..da9f872
--- /dev/null
@@ -0,0 +1,15 @@
+%% Translation of GIT committish: d7cf09411ee80eaf0092af0aa532de64c0c6248e
+  texidocfr = "
+Lorsque LilyPond génère un fichier MIDI, chaque portée sera par défaut
+affectée à un canal, quel que soit le nombre de voix qu'elle contient.
+Ceci permet d'éviter de se retrouver à court de canaux, sachant qu'il
+n'y en a que seize de disponibles.
+
+Le fait de déplacer le @code{Staff_performer} dans le contexte
+@code{Voice} permet d'affecter à chaque voix d'une même portée un canal
+MIDI spécifique.  Dans l'exemple suivant, la même portée donnera lieu à
+deux canaux MIDI différents, chacun étant affecté de son propre
+@code{midiInstrument}.
+
+"
+  doctitlefr = "Affectation d'un canal MIDI par voix"
index 846c8f9bf7c88e69a99b9153f4252e15042b2fa0..15f95b62e3194f1fbc9cfddf3110a72ca6f53222 100644 (file)
@@ -1,8 +1,8 @@
 %% Translation of GIT committish: 9ccf7f0f5e52e074f3b7852416ad5b78718395c8
   texidocfr = "
-Modifier certaines des propriétés du cadrillage temporel aura pour effet
+Modifier certaines des propriétés du quadrillage temporel aura pour effet
 d'en changer l'apparence.
 
 "
-  doctitlefr = "Apparence du cadrillage temporel"
+  doctitlefr = "Apparence du quadrillage temporel"
 
index da3098d6b1cadbd7b0d233ec67d0ee804dfcfd4a..065fdae438b509a2ef1b9af7c3885e936fe1cb9f 100644 (file)
@@ -1,7 +1,7 @@
 @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
 
 @ignore
-    Translation of GIT committish: ede6552ee0a9954a6ced5922cfc0cfa2c40733af
+    Translation of GIT committish: 79165c00e7aadfefb0748ff55b29a1927cb87acd
 
     When revising a translation, copy the HEAD committish of the
     version that you are working on.  For details, see the Contributors'
@@ -15,7 +15,7 @@
 
 @node Exécution de LilyPond
 @chapter Exécution de @command{lilypond}
-@translationof Running LilyPond
+@translationof Running lilyPond
 
 Ce chapitre passe en revue ce qui se passe lorsque vous lancez LilyPond.
 
@@ -62,7 +62,7 @@ nombreuses documentations que vous pourrez trouver sur ce sujet.
 
 @menu
 * Lancement de lilypond::
-* Options en ligne de commande::
+* Options en ligne de commande pour lilypond::
 * Variables d'environnement::
 * Exécution de LilyPond en mode protégé::
 @end menu
@@ -109,6 +109,7 @@ fournira grâce à LilyPond @file{@var{racine}-violon.pdf} et
 
 
 @unnumberedsubsubsec Commandes standard de l'interpréteur
+@translationof Standard shell commands
 
 Si votre interpréteur -- terminal, console, etc. -- prend en charge les
 redirections, les commandes qui suivent vous permettront de
@@ -135,9 +136,9 @@ Notez bien qu'il s'agit ici de commandes internes à l'interpréteur et
 qui n'ont rien à voir avec LilyPond.
 
 
-@node Options en ligne de commande
+@node Options en ligne de commande pour lilypond
 @unnumberedsubsec Options en ligne de commande pour @command{lilypond}
-@translationof Command line options
+@translationof Command line options for lilypond
 
 @cindex lancement de @command{lilypond}
 @cindex ligne de commande, options pour @command{lilypond}
@@ -733,6 +734,7 @@ facilement.
 * Erreur renvoyant à ../ly/init.ly::
 * Message d'erreur Unbound variable %::
 * Message d'erreur FT_Get_Glyph_Name::
+* staff-affinities devraient aller en ordre décroissant::
 @end menu
 
 @node La musique déborde de la page
@@ -867,3 +869,22 @@ caractères non ASCII et qu'il n'a pas été enregistré avec un encodage
 UTF-8.  Pour plus de détails, reportez-vous au chapitre
 @ruser{Codage du texte}.
 
+
+@node staff-affinities devraient aller en ordre décroissant
+@unnumberedsubsec staff-affinities devraient aller en ordre décroissant
+@translationof Warning staff affinities should only decrease
+
+Cet avertissement est émis lorsque la partition ne comporte pas de
+portée, comme par exemple une feuille de chant avec un contexte
+@code{ChordName} et un contexte @code{Lyrics}.  Ce message disparaîtra
+dès lors que autoriserez l'un de ces contextes à se comporter comme une
+portée, à l'aide de l'instruction
+
+@example
+\override VerticalAxisGroup #'staff-affinity = ##f
+@end example
+
+@noindent
+que vous insérerez dès sa création.  Pouur plus d'information,
+reportez-vous à la rubrique
+@ruser{Espacement des lignes rattachées à des portées}.
index b3f3480826d0f39069ca677a7ba3026d605307a1..e3f01eed7e4f2021afbae7930d39eebd90865340 100644 (file)
@@ -1,6 +1,6 @@
 @c -*- coding: utf-8; mode: texinfo; documentlanguage : fr -*-
 @ignore
-    Translation of GIT committish: 87a9977bbd54e3822338e290716845d8e2e304e3
+    Translation of GIT committish: 17f11c2f5ab963bfb07b7652b4860dc4dda5540a
 
     When revising a translation, copy the HEAD committish of the
     version that you are working on.  For details, see the Contributors'
@@ -438,9 +438,20 @@ ligne
 sans oublier le @code{>} au tout début de votre message@tie{}; c'est
 @strong{impératif}.
 
+Si vous ne voulez ou ne pouvez pas envoyer un rapport de bogue selon les
+instructions et en anglais, envoyez votre rapport ou posez votre
+question sur la @uref{http://lists.gnu.org/mailman/listinfo/lilypond-user-fr,
+liste francophone}@tie{}; nous nous chargerons de transmettre un rapport
+à la liste anglophone et assurerons le suivi.
+
 @end itemize
+
+@divEnd
 @divEnd
 
+@divClass{column-center-bottom}
+@subheading Étape 4: Notification de prise en compte
+
 Une fois le message reçu, nos @qq{exterminateurs de bogues} analyseront
 votre rapport et vous demanderont peut-être des informations
 supplémentaires avant de l'ajouter au traceur.  Dans la mesure où
@@ -450,12 +461,15 @@ une fois qu'il aura été ajouté à la base.
 
 Vous serez automatiquement notifié du traitement apporté à ce bogue, dès
 lors que vous avez une compte chez google.
+@divEnd
 
-Si vous ne voulez ou ne pouvez pas envoyer un rapport de bogue selon les
-instructions et en anglais, envoyez votre rapport ou posez votre
-question sur la @uref{http://lists.gnu.org/mailman/listinfo/lilypond-user-fr,
-liste francophone}@tie{}; nous transmettrons un rapport à
-la liste anglophone et assurerons le suivi.
+@divClass{column-center-bottom}
+@subheading Information complémentaire : indication du comportement escompté
+
+Une fois votre requête enregistrée, n'hésitez pas à nous indiquer le
+résultat que vous escomptiez.  Qu'il s'agisse d'un bout de code ou d'une
+image -- réalisée à partir de n'importe quel outil --, tant qu'il nous
+aide à voir ce que vous désirez obtenir.
 @divEnd
 
 
index 1f71cab613ce34972d9d542ae9f4261e58af4ed5..002778be08b5f695368026fe874476265405e455 100644 (file)
 
 @itemize
 
-@item Mats Bengtsson:
-@email{mats.bengtsson@@ee.kth.se},
-@uref{http://www.s3.kth.se/~mabe/},
-Support guru
-
 @item Trevor Daniels:
 @email{t.daniels@@treda.co.uk},
 Assistant documentation editor
@@ -47,7 +42,7 @@ Assistant documentation editor
 @item Reinhold Kainhofer:
 @email{reinhold@@kainhofer.com},
 @uref{http://reinhold.kainhofer.com},
-Music2xml wrangler, bug squasher
+Core developer, Music2xml wrangler
 
 @item David Kastrup:
 @email{dak@@gnu.org}
@@ -91,9 +86,6 @@ Assistant documentation editor, Code cleanup
 @item Neil Puttock:
 Core developer
 
-@item Nicolas Sceaux:
-Core developer, Schemer extraordinaire
-
 @item Carl Sorensen:
 @email{c_sorensen@@byu.edu},
 Core developer, Frog meister
@@ -115,6 +107,11 @@ LSR editor and Bug squad member
 
 @c use colons not commas for @item entries.
 
+@item Mats Bengtsson:
+@email{mats.bengtsson@@ee.kth.se},
+@uref{http://www.s3.kth.se/~mabe/},
+Support guru
+
 @item Pedro Kroeger:
 Build meister
 
@@ -134,6 +131,9 @@ Ancient notation
 @item Erik Sandberg:
 Bug meister
 
+@item Nicolas Sceaux:
+Core developer, Schemer extraordinaire
+
 @end itemize
 @end macro
 
@@ -144,18 +144,30 @@ Bug meister
 
 @c use commas not colons
 
+Sven Axelsson,
 Pál Benkő,
 Frédéric Bron,
 Hajo Dezelski,
 Richard Gay,
+Keith OHara,
 Andrew Hawryluk,
+Christian Hitz,
+Marc Hohl,
+Henning Hraban Ramm,
 Ian Hulin,
 Michael Käppler,
 Marek Klein,
 Kieren MacMillan,
 Thomas Morgan,
+Benjamin Peterson,
+Nathan Reed,
+Julien Rioux,
 Boris Shingarov,
-Andrew Wilson
+Patrick Schmidt,
+Mike Solomon,
+Owen Tuz,
+Andrew Wilson,
+Rodolfo Zitellini
 
 @c no comma for last entry
 
@@ -167,7 +179,10 @@ Andrew Wilson
 
 @c use commas not colons
 
+Keith OHara,
 Marc Hohl,
+Alexander Kobel,
+Mike Solomon,
 Carsten Steger
 
 @c no comma for last entry
@@ -181,8 +196,11 @@ Carsten Steger
 @c use commas not colons
 
 Colin Campbell,
+Andrew Hawryluk,
 James Lowe,
+Mike Moral,
 Ralph Palmer,
+David Pounder,
 Patrick Schmidt
 
 @c no comma for last entry
@@ -192,12 +210,13 @@ Patrick Schmidt
 
 @macro bugsquadCurrent
 
-Dmytro O. Redchuk,
 James E. Bailey,
-Ralph Palmer,
+Colin Campbell,
 Phil Holmes,
 Urs Liska,
-Kieren MacMillan
+Ralph Palmer,
+Kieren MacMillan,
+Dmytro O. Redchuk
 
 @c no comma for last entry
 
@@ -220,10 +239,13 @@ Christian Hitz
 
 @c use commas not colons
 
+Federico Bruni,
 Dénes Harmath,
 Jean-Charles Malahieude,
 @c @email{lolyfan@@wanadoo.fr},
+Tineke de Munnik,
 Till Paala,
+Ralf Wildenhues,
 Yoshiki Sawada
 
 @c no comma for last entry
index 683326dd903ea46da3a7ed9b8d9268603e01567f..c05e013f5d79ff0a0968c81a51d84b4838ae2da8 100644 (file)
@@ -282,7 +282,7 @@ download and install the free-software
 
 @menu
 * Running ./autogen.sh::
-* Running ./configure::
+* Running ../configure::
 @end menu
 
 
@@ -298,50 +298,65 @@ Next, you need to create the generated files; enter the following
 command from your top source directory:
 
 @example
-./autogen.sh
+./autogen.sh --noconfigure
 @end example
 
-This will:
-
-@enumerate
-@item generate a number of files and directories to aid
+This will generate a number of files and directories to aid
 configuration, such as @file{configure}, @file{README.txt}, etc.
 
-@item automatically run the @command{./configure} command.
-@end enumerate
+Next, create the build directory with:
+
+@example
+mkdir build/
+cd build/
+@end example
+
+We heavily recommend building lilypond inside a separate directory
+with this method.
+
 
+@node Running ../configure
+@subsection Running @command{../configure}
 
-@node Running ./configure
-@subsection Running @command{./configure}
 
 @menu
 * Configuration options::
 * Checking build dependencies::
 * Configuring target directories::
-* Making an out-of-tree build::
 @end menu
 
 
 @node Configuration options
 @unnumberedsubsubsec Configuration options
 
-The @command{./configure} command (generated by
+@warning{make sure that you are in the @file{build/} subdirectory
+of your source tree.}
+
+The @command{../configure} command (generated by
 @command{./autogen.sh}) provides many options for configuring
 @command{make}.  To see them all, run:
 
 @example
-./configure --help
+../configure --help
 @end example
 
 
 @node Checking build dependencies
 @unnumberedsubsubsec Checking build dependencies
 
-When @command{./configure} is run without any arguments, it will
+@warning{make sure that you are in the @file{build/} subdirectory
+of your source tree.}
+
+When @command{../configure} is run without any arguments, it will
 check to make sure your system has everything required for
-compilation.  This is done automatically when
-@command{./autogen.sh} is run.  If any build dependency is
-missing, @command{./configure} will return with:
+compilation:
+
+@example
+../configure
+@end example
+
+If any build dependency is missing, @command{../configure} will
+return with:
 
 @example
 ERROR: Please install required programs:  @var{foo}
@@ -357,7 +372,7 @@ WARNING: Please consider installing optional programs:  @var{bar}
 If you intend to build the documentation locally, you will need to
 install or update these programs accordingly.
 
-@warning{@command{./configure} may fail to issue warnings for
+@warning{@command{../configure} may fail to issue warnings for
 certain documentation build requirements that are not met.  If you
 experience problems when building the documentation, you may need
 to do a manual check of @ref{Requirements for building
@@ -367,10 +382,13 @@ documentation}.}
 @node Configuring target directories
 @unnumberedsubsubsec Configuring target directories
 
+@warning{make sure that you are in the @file{build/} subdirectory
+of your source tree.}
+
 If you intend to use your local build to install a local copy of
 the program, you will probably want to configure the installation
 directory.  Here are the relevant lines taken from the output of
-@command{./configure@tie{}--help}:
+@command{../configure@tie{}--help}:
 
 @quotation
 By default, `@command{make@tie{}install}' will install all the
@@ -382,7 +400,7 @@ using `@code{--prefix}', for instance `@code{--prefix=$HOME}'.
 A typical installation prefix is @file{$HOME/usr}:
 
 @example
-./configure --prefix=$HOME/usr
+../configure --prefix=$HOME/usr
 @end example
 
 Note that if you plan to install a local build on a system where
@@ -399,28 +417,11 @@ already included.
 
 It is also possible to specify separate installation directories
 for different types of program files.  See the full output of
-@command{./configure@tie{}--help} for more information.
+@command{../configure@tie{}--help} for more information.
 
 If you encounter any problems, please see @ref{Problems}.
 
 
-@node Making an out-of-tree build
-@unnumberedsubsubsec Making an out-of-tree build
-
-It is possible to compile LilyPond in a build tree different from
-the source tree, using the @option{--srcdir} option of
-@command{configure}.  Note that in some cases you may need to
-remove the output of a previous @command{configure} command by
-running @command{make@tie{}distclean} in the main source directory
-before configuring the out-of-tree build:
-
-@example
-make distclean
-mkdir lily-build && cd lily-build
-@var{sourcedir}/configure --srcdir=@var{sourcedir}
-@end example
-
-
 @node Compiling LilyPond
 @section Compiling LilyPond
 
@@ -436,6 +437,9 @@ mkdir lily-build && cd lily-build
 @node Using make
 @subsection Using @command{make}
 
+@warning{make sure that you are in the @file{build/} subdirectory
+of your source tree.}
+
 LilyPond is compiled with the @command{make} command.  Assuming
 @command{make} is configured properly, you can simply run:
 
@@ -605,9 +609,14 @@ make [-j@var{X} CPU_COUNT=@var{X}] doc  @emph{## usually faster than initial bui
 @item
 Reset:
 
-@example
-make doc-clean              @emph{## use only as a last resort.}
-@end example
+In some cases, it is possible to clean the compiled documentation
+with @samp{make@tie{}doc-clean}, but this method is not guaranteed
+to fix everything.  Instead, we recommend that you delete your
+@file{build/} directory, and begin compiling from scratch.  Since
+the documentation compile takes much longer than the
+non-documentation compile, this does not increase the overall time
+by a great deal.
+
 @end itemize
 
 @node Building documentation
diff --git a/Documentation/included/display-predefined-string-tunings.ly b/Documentation/included/display-predefined-string-tunings.ly
new file mode 100644 (file)
index 0000000..ee26e88
--- /dev/null
@@ -0,0 +1,87 @@
+\version "2.13.46"
+
+#(define (filter-instrument instrument-name tuning-alist)
+   (filter (lambda (entry)
+             (string-prefix? instrument-name
+                            (symbol->string (car entry))))
+           tuning-alist))
+
+#(define (chord-display tuning-alist-entry)
+   (let* ((ch-mus (cdr tuning-alist-entry))
+          (tuning-symbol (car tuning-alist-entry))
+          (ev-chord (car (extract-named-music
+                           ch-mus
+                           'EventChord)))
+          (elts (ly:music-property ev-chord 'elements)))
+     (music-map (lambda (m)
+                  (begin
+                    (if (not (null? (ly:music-property m 'duration)))
+                        (ly:music-set-property!
+                          m
+                          'duration
+                          (ly:make-duration 0 0 1 1)))
+                    m))
+                ev-chord)
+     (let ((elts (ly:music-property ev-chord 'elements))
+           (script (make-music 'TextScriptEvent
+                               'direction 1
+                               'text (symbol->string tuning-symbol))))
+       (ly:music-set-property!
+         ev-chord
+         'elements
+         (cons script elts)))
+     ev-chord))
+
+displayInstrumentDefaultTunings =
+#(define-music-function (parser location instrument) (string?)
+   (let* ((filtered-instruments (filter-instrument instrument defaultStringTunings))
+          (display-elements (map chord-display filtered-instruments)))
+     (make-music 'SequentialMusic 'elements display-elements)))
+
+
+\score {
+  {
+    \new Staff {
+      \textLengthOn
+      \override Score.RehearsalMark #'self-alignment-X = #LEFT
+
+      \mark \markup {\left-align "Guitar tunings"}
+      \clef "treble_8"
+      \displayInstrumentDefaultTunings #"guitar"
+      \break
+
+      \mark \markup {\left-align "Bass tunings"}
+      \clef "bass_8"
+      \displayInstrumentDefaultTunings #"bass"
+      \break
+
+      \mark \markup {\left-align "Mandolin tunings"}
+      \clef "treble"
+      \displayInstrumentDefaultTunings #"mandolin"
+      \break
+
+      \mark \markup {\left-align "Banjo tunings"}
+      \clef "treble_8"
+      \displayInstrumentDefaultTunings #"banjo"
+      \break
+
+      \mark \markup {\left-align "Ukulele tunings"}
+      \clef "treble"
+      \displayInstrumentDefaultTunings #"ukulele"
+      \clef "alto"
+      \displayInstrumentDefaultTunings #"tenor-ukulele"
+      \displayInstrumentDefaultTunings #"baritone-ukulele"
+      \break
+
+      \mark \markup {\left-align "Orchestral string tunings"}
+      \clef "treble"
+      \displayInstrumentDefaultTunings #"violin"
+      \clef "alto"
+      \displayInstrumentDefaultTunings #"viola"
+      \clef "bass"
+      \displayInstrumentDefaultTunings #"cello"
+      \clef "bass_8"
+      \displayInstrumentDefaultTunings #"double-bass"
+    }
+  }
+}
index 7a294693fee8f31043d3e37acb2d209d2db1f887..aaf17246d09900f4c6ad8797150cdc8dff6ffc18 100644 (file)
@@ -3047,11 +3047,10 @@ occur only at explicit @code{\bar} commands.
 @cindex clefs, visibility of octavation
 
 The small octavation symbol on octavated clefs is produced by the
-@code{OctavateEight} layout object.  Its visibility is controlled
-independently from that of the @code{Clef} object, so it is
-necessary to apply any required @code{break-visibility} overrides
-to both the @code{Clef} and the @code{OctavateEight} layout objects
-to fully suppress such clef symbols at the start of each line.
+@code{OctavateEight} layout object.  Its visibility is automatically
+inherited from the @code{Clef} object, so it is not necessary to apply
+any required @code{break-visibility} overrides to the @code{OctavateEight} 
+layout objects to suppress octavation symbols for invisible clefs.
 
 For explicit clef changes, the @code{explicitClefVisibility}
 property controls both the clef symbol and any octavation symbol
index 462de4096d4d6aeb65972a297e08a87502c8dae5..0ea8ea61e2e24e3e337cec7fa5e7561621d75d39 100644 (file)
@@ -7,7 +7,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.13.36"
+@c \version "2.13.46"
 
 @node Fretted string instruments
 @section Fretted string instruments
@@ -430,6 +430,11 @@ Guitar special effects are limited to harmonics and slides.
 @cindex tablature, predefined string tunings
 @cindex fretted instruments, predefined string tunings
 @cindex predefined string tunings for fretted instruments
+@cindex tablature, violin
+@cindex tablature, viola
+@cindex tablature, cello
+@cindex tablature, bass
+@cindex tablature, double bass
 
 @funindex StringTunings
 
@@ -440,7 +445,8 @@ specified.  The tuning of the strings is given in the
 @code{stringTunings} property.
 
 LilyPond comes with predefined string tunings for banjo, mandolin,
-guitar, bass guitar and ukulele.  LilyPond automatically sets
+guitar, bass guitar, ukulele, violin, viola, cello, and double bass.
+LilyPond automatically sets
 the correct transposition for predefined tunings.  The following
 example is for bass guitar, which sounds an octave lower than
 written.
@@ -466,28 +472,96 @@ The default string tuning is @code{guitar-tuning}, which
 is the standard EADGBE tuning.  Some other predefined tunings are
 @code{guitar-open-g-tuning}, @code{mandolin-tuning} and
 @code{banjo-open-g-tuning}.  The predefined string tunings
-are found in @file{scm/tablature.scm}.
+are found in @file{ly/string-tuning-init.ly}.
+
+@funindex contextStringTunings
+@funindex \contextStringTunings
+@cindex tablature, custom string tunings
+@cindex custom string tunings
+
+Any desired string tuning can be created.  The
+@code{\contextStringTuning} function can be
+used to define a string tuning and set it as the
+@code{stringTunings} for the current context.
+@code{\contextStringTuning} takes two arguments: the
+symbol in which the string tuning, and a chord construct
+that defines the pitches of each string in the tuning.
+The chord construct must be in absolute octave mode,
+see @ref{Absolute octave entry}.  The string
+with the highest number (generally the lowest string) must
+come first in the chord.  For example, we can
+define a string tuning for a four-string instrument with pitches
+of @code{a''},  @code{d''},  @code{g'}, and @code{c'}:
+
+@lilypond[quote,verbatim]
+
+mynotes = {
+  c'4 e' g' c'' |
+  e''4 g'' b'' c'''
+}
+
+<<
+  \new Staff {
+    \clef treble
+    \mynotes
+  }
+  \new TabStaff {
+    \contextStringTuning #'custom-tuning <c' g' d'' a''>
+    \mynotes
+  }
+>>
+@end lilypond
+
+The @code{stringTunings} property is also used by
+@code{FretBoards} to calculate automatic fret diagrams.
+
+@funindex makeStringTuning
+@funindex \makeStringTuning
+
+String tunings are used as part of the hash key
+for predefined fret diagrams
+(see @ref{Predefined fret diagrams}).  The @code{\makeStringTuning}
+function is used to create a string tuning without setting the
+@code{stringTunings} property in the current context.  The
+arguments to @code{\makeStringTuning} are the symbol to be
+used for the new string tuning and a chord construct used
+to define the tuning.
+The previous example could also be written as follows:
+
+@lilypond[quote,verbatim]
+\makeStringTuning #'custom-tuning <c' g' d'' a''>
 
-A string tuning is a Scheme list of string pitches,
+mynotes = {
+  c'4 e' g' c'' |
+  e''4 g'' b'' c'''
+}
+
+<<
+  \new Staff {
+    \clef treble
+    \mynotes
+  }
+  \new TabStaff {
+    \set TabStaff.stringTunings = #custom-tuning
+    \mynotes
+  }
+>>
+@end lilypond
+
+Internally, a string tuning is a Scheme list of string pitches,
 one for each string, ordered by string number from 1 to N,
 where string 1 is at the top of the tablature staff and
 string N is at the bottom.  This ordinarily results in ordering
 from highest pitch to lowest pitch, but some instruments
 (e.g. ukulele) do not have strings ordered by pitch.
 
-A string pitch in a string tuning list is the pitch difference
-of the open string from middle C measured in semitones.  The
-string pitch must be an integer.  LilyPond calculates the actual
-pitch of the string by adding the string tuning pitch to the
-actual pitch for middle C.
-
-LilyPond automatically calculates the number of strings in the
-@code{TabStaff} as the number of elements in @code{stringTunings}.
-
-Any desired string tuning can be created.  For example, we can
-define a string tuning for a four-string instrument with pitches
-of @code{a''},  @code{d''},  @code{g'}, and @code{c'}:
+A string pitch in a string tuning list is a LilyPond pitch
+object.  Pitch objects are created with the Scheme function
+@code{ly:make-pitch} (see @ref{Scheme functions}).
 
+If desired, a string tuning can be created as a Scheme
+literal.  The example below recreates the examples above,
+but the string tuning is not saved as a separate object:
 
 @lilypond[quote,verbatim]
 mynotes = {
@@ -501,12 +575,20 @@ mynotes = {
     \mynotes
   }
   \new TabStaff {
-    \set TabStaff.stringTunings = #'(21 14 7 0)
+    \set TabStaff.stringTunings = #`(,(ly:make-pitch 1 5 0)
+                                    ,(ly:make-pitch 1 1 0)
+                                    ,(ly:make-pitch 0 4 0)
+                                    ,(ly:make-pitch 0 0 0))
     \mynotes
   }
 >>
 @end lilypond
 
+LilyPond automatically calculates the number of strings in the
+@code{TabStaff} and the number of strings in an automatically
+calculated @code{FretBoard} as the number of elements
+in @code{stringTunings}.
+
 @cindex moderntab clef
 @cindex clef, moderntab
 @cindex clef, tab
@@ -527,7 +609,13 @@ A modern tab clef can also be used.
 The modern tab clef supports tablatures from 4 to 7 strings.
 
 @seealso
+Notation Reference:
+@ref{Absolute octave entry},
+@ref{Predefined fret diagrams},
+@ref{Scheme functions}.
+
 Installed Files:
+@file{ly/string-tuning-init.ly}
 @file{scm/tablature.scm}.
 
 Snippets:
index c93abe76b0b7a2141b2478537090f4d31ae03d00..11acf92a1270fe1fcacb5fd9e26c800b170f8c07 100644 (file)
@@ -195,6 +195,39 @@ center of the staff that is closest to the beam.  For a simple
 example of beam tweaking, see @rlearning{Fixing overlapping
 notation}.
 
+@cindex cross-staff collisions
+@cindex collisions, cross-staff voices
+
+Overlapping notation can result when voices cross staves:
+
+@lilypond[verbatim,quote]
+\new PianoStaff <<
+  \new Staff = "up" {
+    \voiceOne
+    % Make space for fingering in the cross-staff voice
+    \once\override DynamicLineSpanner #'staff-padding = #3.4
+    e''2\p\< d''\> s1*0\!
+  }
+  \new Staff = "down" <<
+    {
+      \clef bass
+      s4. e,8\rest g,2\rest
+    } \\ {
+      c8\( g c'
+      \change Staff = "up"
+      e' g' b'-3 a' g'\)
+    }
+  >>
+>>
+@end lilypond
+
+The stem and slur overlap the intervening line of dynamics
+because automatic collision resolution is suspended for beams, slurs
+and other spanners that connect notes on different staves,
+as well as for stems and articulations if their placement is
+affected by a cross-staff spanner.
+The resulting collisions must be resolved manually, where necessary,
+using the methods in @rlearning{Fixing overlapping notation}.
 
 @seealso
 Learning Manual:
index 2ee583b1d5c589563804086ecaa6d6a13bdb0a12..fb5cb99cdb529e547053cd73168cc2516220d593 100644 (file)
@@ -8,7 +8,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.13.36"
+@c \version "2.13.46"
 
 @node Notation manual tables
 @appendix Notation manual tables
@@ -16,6 +16,7 @@
 @menu
 * Chord name chart::
 * Common chord modifiers::
+* Predefined string tunings::
 * Predefined fretboard diagrams::
 * MIDI instruments::
 * List of colors::
@@ -416,6 +417,13 @@ Perfect fifth, octave
 
 @end multitable
 
+@node Predefined string tunings
+@appendixsec Predefined string tunings
+
+The chart below shows the predefined string tunings.
+
+@lilypondfile{display-predefined-string-tunings.ly}
+
 @node Predefined fretboard diagrams
 @appendixsec Predefined fretboard diagrams
 
index 710f162c3c41f823318b3a8634b78a408698f702..e1dfb230bae01d2533c5a3092673430e0c5865ed 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "keyboards"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Los símbolos específicos de acordeón discanto se escriben mediante
 @code{\\markup}.  Se puede trucar la colocación vertical de los
index 2a29bbf42abaa4e43c01e46a6d16f24f170d48aa..b8e26011660aa20b9db17ee04b8d4ba56e53bfbf 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "chords, ancient-notation, contexts-and-engravers"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Al escribir un bajo cifrado, podemos situar las cifras encima o debajo
index d2025a496dc27f82133b8c8f886489fee6972d7d..548f9726b55b0b8909d6867621ae0f4484061b8a 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches, staff-notation, vocal-music"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   doctitlees = "Añadir un ámbito por voz"
   texidoces = "
 Se puede añadir un ámbito por cada voz. En este caso, el ámbito se
index 9b9bbd0cdefd65536973a7e19ab2766eafddecd1..bdf77ac853e3c49d0b798e2b5c31cd3c89eeb325 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "staff-notation, contexts-and-engravers, breaks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Al añadir un pentagrama nuevo en un salto de línea, por desgracia
 se añade un espacio adicional al final de la línea antes del salto
index d856224e7bf2d92d209d0a429fea9ce6df188546..02fddb0017fa48a3bb9497cf107ed132495fa815 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "staff-notation, contexts-and-engravers"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede añadir (posiblemente de forma temporal) un pentagrama
 nuevo una vez que la pieza ha comenzado.
index aea3f6038567b87f721554217e116d9998cc34d6..5fd6e0d0d91b0d1e9a62ca60055ce53d2cd49be0 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "chords"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Para añadir indicaciones de línea divisoria dentro del contexto de
 los nombres de acorde @code{ChordNames}, incluya el grabador
index e8228d84e0b844dacde22309d0d16712e2a013d6..b41565a2708ba2cf76a45c24d2cb03a187fca672 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La sintaxis de LilyPond puede implicar muchas colocaciones poco
 comunes para los paréntesis, corchetes, etc, que a veces se tienen
index ea47f251d8b87d2c6ef85ef564088d2975c5108f..73d3f161e8a393aec0b49d147ea1881aeaaed9be 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, percussion"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Mediante la utilización de las potentes herramientas preconfiguradas
 como la función @code{\\drummode} y el contexto @code{DrumStaff}, la
index a15ba0b671f64b3c756b3555fc0551c0e0ca1f6d..082c217ff9ec7c13c21e598b85dcb8f9682d1ad1 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Para añadir digitaciones a las tablaturas, utilice una combinación de
 @code{\\markup} y @code{\\finger}.
index cf6895718b41b7b35989b130241e1b14d3e46cdf..a5d99fa4d871bc94018d1f379bf9f716d52bab0f 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "staff-notation, vocal-music"
 
-%% Translation of GIT committish: 4c1aa3b16f7b94ca32b0c022f60ed66826d031b0
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
    Este ejemplo muestra una forma de simplificar la adición de muchas
index 2c9312b130c4a3add05920e0209bc646ee359478..253493ee873149eb0b91e10dc1c9c2d43c2743f8 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La función @code{\\parenthesize} es un truco especial que encierra
 objetos entre paréntesis.  El grob asociado es @code{ParenthesesItem}.
index 54e6417e0b8524d4b360436203bd8705ca662731..dd7323da1374f3fee9ed433bf62ab7b4c9a1bcb5 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "text, titles"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Con algo de código de Scheme, se puede añadir fácilmente la fecha
 actual a una partitura.
index c2a04a0deb35e12226a17e3dd39403fb25501b32..268775b34708c7916992c279d99c062b8853df60 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "repeats"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 El grabador @code{Volta_engraver} reside de forma predeterminada
 dentro del contexto de @code{Score}, y los corchetes de la repetición
index e6db50c5eef8a99e4bb69f25ccf9f9128ae15867..f00ae40097f1e9bfc9a80a0d15ff732d7bad9ca4 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "simultaneous-notes"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
  doctitlees = "Voces adicionales para evitar colisiones"
  texidoces = "
 En ciertos casos de polifonía compleja, se necesitan voces adicionales
index b438d0d57cb461622ce6b34146f588aacbc4023b..ac1cce2312d65d201ee1b1945c2f7a9a4664e75e 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede ajustar la separación entre las notas de adorno utilizando la
 propiedad @code{spacing-increment} de @code{Score.GraceSpacing}.
index 32fd5e49c53ec9d90e3a31323319cc6a59d6eca8..8c964e9ec78c184bdd704835d826185d05af929b 100644 (file)
@@ -1,11 +1,11 @@
 % Do not edit this file; it is automatically
 % generated from Documentation/snippets/new
 % This file is in the public domain.
-%% Note: this file works from version 2.13.39
-\version "2.13.42"
+%% Note: this file works from version 2.13.42
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 0b3f8eb5000541aacdb027a93db57c199fd8ba04
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Este fragmento de código muestra cómo situar la línea de base de la
 letra más cerca del pentagrama.
index 42ad82a5ea5c452ae9db4e30c607844bf20c9f80..32fb8d3e4cf729d5472ea49194dc01950c3aca7c 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Puede ser necesario trucar la propiedad
 @code{shortest-duration-space} para poder ajustar el tamaño de las
index 47c7b87b9748af03a81eb940c53d5f7afb075e03..ec70b3b1336174f6559937ae9838f727b3b69827 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "text, paper-and-layout, titles"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La alineación horizontal de los nombres de instrumento se puede
 trucar modificando la propiedad @code{Staff.InstrumentName
index efdfa948d977942ef3158a46337610dc53ef078a..aa2fdc38413cd2430e7ac24c342d82f85ea43494 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Los números de compás se alinean de forma predeterminada por la
index b23f39a077b29d00302b61cbdfd899d5ccf104c0..b1c81d678d81f58db3fdab2f625eef15e3cb26a2 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "text"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Si están especificadas, las marcas de texto se pueden alinear con
 objetos de notación distintos a las líneas divisorias.  Entre estos
index a3f591000e97dc73c4e389aa9ca497311d25293e..f050b54cfffcdef9012f3431c2343ddb0376b74a 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "editorial-annotations, fretted-strings, spacing"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 Las cifras de digitación orientadas verticalmente se colocan de forma
index dc93e75cc9d5ccde241e00ad7c408151124559dc..4707706ed4f30e096163a36b9989a42c8e919859 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede variar la longitud de las plicas de las figuras unidas por
 una barra mediante la sobreescritura de la propiedad
index f11c48dc0f8e5fe51fc749ac6810850123b87a5a..ec616de11112f6b8b72ffa54c385f6dee2f12b23 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches, vocal-music"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   doctitlees = "Ámbitos con varias voces"
   texidoces = "
 La adición del grabador @code{Ambitus_engraver} al contexto de
index ab2a22826963e52751cdbf8f4bcf14f37c7e3d01..fc333d23a592bb3daf964bb19291d4ef6da7f1d6 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "editorial-annotations, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 De forma predeterminada se añaden corchetes de análisis sencillos
 debajo del pentagrama.  El ejemplo siguiente muestra una manera de
index ccb7921591a4ad25ec8f5ec304b8e158f83c5207..e13454aed8049f936e181d7bc7501b93b8a22210 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "ancient-notation"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Aquí se muestran muchos de (¿o quizá todos?) los símbolos que
 están contemplados por la capacidad de LilyPond para la música
index b73b9c23638b2d3709cf82f2aec4627492f13ccd..82684b6f0517a61456df6d648e22dccd61b43244 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 #(set-global-staff-size 15)
 \paper {
index 401a5dafca0ad413b08f3c60a279af902a1754b6..853b91378ff4627a9a7fc5ccb73a677b8a491ed5 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "vocal-music, ancient-notation, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Este ejemplo muestra cómo hacer una transcripción moderna de canto
 gregoriano. El canto gregoriano no tiene compás ni plicas; utiliza
index df586afdc4ed9d1f932aafb8583bbdbd03044181..85955230b1afd4d803af62c1469a03654d27a267 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "ancient-notation, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Al transcribir música mensural, es útil un «incipit» al compienzo
 de la pieza para indicar la tonalidad y el tempo
index f9e9ef8db821bd2738980f0db1d4f174876ec08e..eca6f6462d089989f046eedba81140021b34535c 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "ancient-notation"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Las indicaciones de compás también se pueden grabar en estilo antiguo.
 
index 64f0eebecc1c60df3b11ba74f53ebcc19c1b77de..9372378ce52234cb4a87b60eca5e0a7a45984326 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches, editorial-annotations"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   doctitlees = "Aplicar estilos de cabeza según la nota de la escala"
   texidoces = "
 La propiedad @code{shapeNoteStyles} se puede usar para definir varios
index 9ff4bba68636bace8fb42d6f5c0b728cdf3d363d..8033a792105a4eda1bce501333af473f3d51d62b 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "world-music"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Para las improvisaciones o @emph{taqasim} que son libres durante unos
 momentos, se puede omitir la indicación de compás y se puede usar
index b4d6520b5f386dc50d7f411b66ba65052de1a92e..1a770371806f9f625257bc63d70e4a3ddaf3403b 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede hacer que una ligadura de expresión sea asimétrica para
 adaptarse mejor a un patrón asimétrico de notas.
index c44cc27c7db86968c7240c8148f8af244036b93f..b75d6f305d57955f95f8248e127977f10d1ab995 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden subdividir las barras automáticamente.  Estableciendo la
 propiedad @code{subdivideBeams}, las barras se subdividen en
index 7df4deb9a1d3d8b39b379f36c4b8e181307314a2..b8e6a33700eba4610a3bd102b0aed47033ae444b 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, editorial-annotations, chords, tweaks-and-overrides"
 
-%% Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 
index b90d7a25b0a22c85d7b9ffd7d2a6830425ee5a5e..b7ad07ca01dda965a3641ed14d140d612ac0dc22 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: cde045f4e833aa491fb63f2222e14bef49507577
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Las reglas de final de barra especificadas en el contexto
 @code{Score} se aplican a todos los pentagramas, pero se pueden
index d3e4c956be903081da5ff569f8737f18151e92a1..260631fe6899bcbc7b8d5abb053f88d753884237 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 No está especificada ninguna agrupación predeterminada automática
 de las barras para el compás de 7/8, de forma que si se requieren
index 70b00be1ec1683f82504f2cdca26abf5c4ce6cfd..01dce11061266491f8615e3d47a511345c5b0a4b 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Normalmente están prohibidos los saltos de línea si las barras
 atraviesan las líneas divisorias.  Se puede cambiar este
index 058126053f3281cfe92986a142253ba3b8436d1d..9974933fab73a0b3879de6a5fb95e299f91314c8 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "editorial-annotations, text"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La instrucción @code{\\whiteout} intercala un rectángulo blanco
 debajo de un elemento de marcado.  Este rectángulo blanco no tapa
index ac231acad3cfb68fd1179ae64df440f3a395f909..090eeb51f1f27d9d0dad09aa47e361349f9bbcfb 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Para hacer invisibles partes de un regulador de crescendo, se usa
 el método de dibujar un rectángulo blanco encima de la parte
index 610121df0d97dcaa7b677619c149ddf10c45ed7f..7234faca599a1810ec44867eb8844124d7a06cd0 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 A veces se denota una «cesura» mediante una doble marca de respiración
 parecida a las vías del tren, con un calderón encima. Este fragmento
index fa48d0a37a9f1636b750de36e510a0a8143dd0b1..bcbb81c47e8f8af685518122cf0dc7b73b3b5ddd 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, text"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Este ejemplo proporciona una función para tipografiar un regulador con
 texto por debajo, como @qq{molto} o @qq{poco}. El ejemplo ilustra
index c599be1556626599091071c071c26ed39ec99af9..785785250965ea32b78e6dd51c40d656db7efe30 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
   lsrtags = "text, tweaks-and-overrides, contexts-and-engravers"
index 45b2fc0d09619db89fa53a749aedc9bf90fa81b3..404ec909b9d6bcbd15c74cf6260bd84886b46f35 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, unfretted-strings"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Para hacer más pequeño el círculo de @code{\\flageolet} (armónico)
 utilice la siguiente función de Scheme.
index e3c25c6dcbebf38cc162617e2c45d2ac0fbf2536..dd9abcf45fddda739729c5a64c78ed52b0439987 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "simultaneous-notes, editorial-annotations, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden modificar notas individuales de un acorde con la instrucción
 @code{\\tweak}, alterando la propiedad @code{font-size}.
index 7e10afa19b2658ee133855190cecf265da45eeb0..6708a62b3f8b349a89bbb9745fc01ffd787a75aa 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se insertan automáticamente barras en ángulo cuando se detecta un
 intervalo muy grande entre las notas.  Se puede hacer un ajuste
index 14cd06a49b2e9d19b5eb987a3ed285d5f15b10b6..a91acf8406137b26f26ee71d16440d54896551d1 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "chords"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede establecer el separador entre las distintas partes del
 nombre de un acorde para que sea cualquier elemento de marcado.
index 46687290819ac5a501efd8e1da516ac6c52967f4..6af956aa61f945a0d262b6c6388b1bb38c12baf5 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
  doctitlees = "Cambiar la forma de los silencios multicompás"
  texidoces = "
 Si hay diez compases de silencio o menos, se imprime en el pentagrama
index b6dcc7d39154454f5179e71fc7d8e155f8a18f43..13075b863810a6e29b1483bdc4fed09e62e9527c 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "fretted-strings"
 
-%% Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 
index 8949b825b4213bb3739980705a9b405269359706..cc24814e2369d1bc6e2864d0f5ce8ae75a1d2178 100644 (file)
@@ -4,9 +4,29 @@
 \version "2.13.39"
 
 \header {
+%% Translation of GIT committish: d7cf09411ee80eaf0092af0aa532de64c0c6248e
+  texidocfr = "
+Lorsque LilyPond génère un fichier MIDI, chaque portée sera par défaut
+affectée à un canal, quel que soit le nombre de voix qu'elle contient.
+Ceci permet d'éviter de se retrouver à court de canaux, sachant qu'il
+n'y en a que seize de disponibles.
+
+Le fait de déplacer le @code{Staff_performer} dans le contexte
+@code{Voice} permet d'affecter à chaque voix d'une même portée un canal
+MIDI spécifique.  Dans l'exemple suivant, la même portée donnera lieu à
+deux canaux MIDI différents, chacun étant affecté de son propre
+@code{midiInstrument}.
+
+"
+  doctitlefr = "Affectation d'un canal MIDI par voix"
+
   lsrtags = "contexts-and-engravers, midi"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+
+
+
+
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Al producir una salida MIDI, el comportamiento predeterminado es
 que cada pentagrama representa un canal MIDI, con todas las voces
index 1690e6fde41c2c141a5ffc3e21ea7864d8fd294d..ff031e7ea96f5fa647664b864f46ad7cf564da37 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "simultaneous-notes"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Al utilizar la posibilidad de combinación automática de partes, se
 puede modificar el texto que se imprime para las secciones de solo
index 9d1c6c2357b731612ab3e9187164d5339aa468ca..525b4cc2d49d545bf29027ab09a5bfdf45d72fdd 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede modificar el texto empleado para los crescendos y
 decrescendos modificando las propiedades de contexto
index fce41fe4033ee95356120c32ce50d68cd881752a..682f7ec45c980b0959f83143adf080e154c3f721 100644 (file)
@@ -2,9 +2,9 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \header {
-%% Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 Es posible ajustar la separación en las indicaciones de tesitura.
index 334dd06f0497e69b7293bee7ec8e2a077458f24e..0c17129fa7b42713073fc937b9b0f41df43afc4f 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, editorial-annotations"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede cambiar el aspecto de las ligaduras de expresión de
 continuas a punteadas o intermitentes.
index 5d0703f6fea2f53c928ccfee89311facd40ee2c6..9a17e9ea1dab54f4de134fbd8e6b4765f9ac6759 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 El glifo de la marca de respiración se puede ajustar
 sobreescribiendo la propiedad de texto del objeto de presentación
index 76aac50a8889838a690bcdf3ed02719ad6b701df..5c0b3ee35fb3bda8ed59792359e5a5531a225c51 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "chords"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La nomenclatura inglesa (predeterminada) para los acordes del cifrado
 americano se puede cambiar por la alemana (@code{\\germanChords}
index c4a1b9d812700f185b3281ed02faaafd783202a2..78b92c84c053bdd91b2e9761b8cd4164fe9447dd 100644 (file)
@@ -2,9 +2,9 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \header {
-%% Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 Este código muestra cómo cambiar la cantidad de puntillos de una nota.
index e7f47044efe8be037f274f6b62cf425178f080ab..67ecd3a2be6abaf363fff6a4ebb1e1376dd939f0 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "chords"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Las alteraciones y los signos «más» pueden aparecer antes o
 después de los números, según el valor de las propiedades
index cbb50256cfa79f67092b040ea9b4c7e5028a11a8..fc24b0ecaa694e44535f5946dab11a5049b42a89 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%%%    Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%%%    Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 
index a06a36a31a1f70b1e0621d1b2a85120680e888bb..cb1cb428be315c1f1fe8703fe4a56af052b8e205 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, tweaks-and-overrides, midi"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Para cambiar el tempo en la salida MIDI sin
 imprimir nada, hacemos invisible la indicación metronómica:
index 64035db9452b237c0e815a4734fcb127bbdc1dc1..974eeb6fbf73ea7f52f5b940381eb6550c691f65 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "keyboards, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede usar @code{Staff.pedalSustainStrings} para fijar el texto de
 las indicaciones de pisar pedal y levantar pedal.  Observe que las
index 6914193fd89d8ac7532fc7f04d5bb775d842b527..9c128241e02a25d3d76fc3678430ae79f1325953 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La instrucción @code{\\time} establece las propiedades
 @code{timeSignatureFraction}, @code{beatLength}, @code{beatGrouping} y
index 4aa12f3e3c130e5c76820c2e662973e29f188571..8262d33d785d3ae9a3023facf6b1882aa4859ec8 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
  doctitlees = "Cambiar el número del grupo especial"
  texidoces = "
 
index fafa772f15ec11272bebb0a2d5d50f5d92c550e2..3d7357b42d4f0d310a23c9df7d25d5426d349d8c 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, contexts-and-engravers"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La propiedad @code{measureLength}, junto con
 @code{measurePosition}, determina cuándo es necesario dibujar una
index bceccdc32a0421af0860e87e3122f053c15200d9..949ff1034e3529cdd34fb1493ea80e00245dcbdd 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, vocal-music, ancient-notation, contexts-and-engravers"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Este tipo de notación se utiliza para el canto de los Salmos, en
 que las estrofas no siempre tienen la misma longitud.
index 195d92f9cf9d49cef61a69ed92603f35d07817bc..e3375f450c8bbb728373d41236df6b91576f3970 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "chords"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede usar la propiedad @code{chordNameExceptions} para
 almacenar una lista de notaciones espaciales para acordes
index 958afb7678abb665ce37f84a91ecbe2d8be69d12..852debe549e8573a84a1ab2cd24b1bbed23d87c0 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "chords"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La presentación del acorde de séptima mayor se
 puede ajustar mediante majorSevenSymbol.
index 6d83c8bb2d9b60f73826337190fa7ea4ec1e286e..8c5dba8fbebf3e58597dfa220010c59b6edc024c 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede hacer que los diagramas de posiciones se muestren sólo
 cuando el acorde cambia o al comienzo de una nueva línea.
index 5e5529f93029ec1df67d814348a94032fa2df9a6..fd110d4245828c3b25e9d51c86bcf14c709e3878 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 #(set-global-staff-size 15)
 \paper {
   ragged-right = ##f
index 2dbc96b47cdd3216194093abd7f323602f580361..bc5339eea6c9853a210d95f8b515f99e80d3a025 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Este código muestra cómo recortar (extraer) fragmentos a partir de una
 partitura completa.
index e460acd86aac91f1b5429c5e4ec870005e3658b5..0ba5cd5069e83c41632f3f4d2a05cc56a704efcd 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "simultaneous-notes, chords, keyboards"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Los «clusters» o racimos son un mecanismo para indicar la
 interpretación de un ámbito de notas al mismo tiempo.
index c1363f11bfa66a915c9336f90558b3a239168739..30b0b2dfb03e45f8114f4c73ba73f4b251f9de3a 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, text"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Ciertas indicaciones dinámicas pueden llevar textos (como @qq{più
 forte} o @qq{piano subito}). Se pueden producir usando un bloque
index 8b396029bdeb12cc04d1cd87bfd4328dd9dcf4a6..d759d9fbe00e43b624ab9ef0ae4b900eae67cfaf 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "simultaneous-notes, text"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 La herramienta de combinación de partes (instrucción
index d418d0c956f1c804c3cfa8e1ccceec21aea80815..693a3f0e0d29027b114d570cac0dd227cd6832c3 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
  doctitlees = "Indicaciones de compases compuestos"
  texidoces = "
 Las indicaciones de compás poco frecuentes como @qq{5/8} se pueden
index bd3f2788dfee7284f39be67f9c8604b1d6b25d9b..121da29cbfba044082ee2d2968512085b4e0d598 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La agrupación de pulsos dentro de un compás está controlada por la
 propiedad de contexto @code{beatStructure}.  Hay establecidos valores
index 290e2fb86a565bb7a6aee98a793c1d9e58b1446c..eb56086fba5a76dfd76ca815392e9dc21f3e6e64 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede tipografiar un gissando contemporáneo sin nota final
 utilizando una nota oculta y temporalización de cadenza.
index 507646897914fb3e1d904599c7f24c1217f82784..f94c3ecc485a4d1e301fa1093f176fe5d300be51 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 La visibilidad de los objetos de extensión que acaban en la primera
index dd8434417c46becc8ae6c2f9667f7f07bb0c9758..b61162eb6dd363186bb35aa6a031b1cbfcfe62dd 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "editorial-annotations, chords, keyboards, fretted-strings"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede controlar con precisión la colocación de los números de
 digitación.  Para que se tenga en cuenta la orientación de las
index b3c32a0a771e28cb498bdd589b9528bc31e9f3c5..f5133a34245487410a046b609a4cf1a9c8479b8f 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 El orden vertical que ocupan las inscripciones gráficas está
 controlado con la propiedad @code{'script-priority}. Cuanto más
index 83d9eca23098e30eab4418dbbbfc52530914b7c9..5611d552183a598b9040a7535f8ead6b71ce446f 100644 (file)
@@ -4,7 +4,7 @@
 \version "2.13.39"
 
 \header {
-%% Translation of GIT committish: 67e7cb93611fa389c7e86c6e47e894ff30a8395c
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 El comportamiento predeterminado de la visibilidad de los corchetes de
@@ -23,6 +23,10 @@ corchete solamente si no hay barra).
 
 
 
+
+
+
+
 %% Translation of GIT committish: 190a067275167c6dc9dd0afef683d14d392b7033
 
   texidocfr = "
index 2865ee93b2038305911c527c50a2a12d385ea64e..b77764e91c4cd277a3639c2606a7b8862b06ef9f 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, editorial-annotations, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 texidoces = "
 La creación de un grupeto circular de anticipación entre dos notas,
 donde la nota inferior del grupeto utiliza una alteración, requiere
index 8e00a97212491152e47a424f14c12d864eaa12f2..675184d1e2a4a688be4d853de98cb12d85a8599e 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 En una música que tenga muchas apariciones de la
 misma secuencia de notas a distintas alturas, podría ser de
index e1cc74e9a139ba1941d52a809fd358a6637db268..2c11d344f1f5aba472dfcfb8432058a6b97931d7 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede trazar un símbolo de arpegio entre notas de distintas
 voces que están sobre el mismo pentagrama si el grabador
index d75d132633635661a1a4da0400caa8f28ad094c2..bb07d9ff4c67ca14def973b1f37e006b4c050dad 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "staff-notation, editorial-annotations, contexts-and-engravers, paper-and-layout"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Para crear pentagramas en blanco, genere compases vacíos y después
 elimine el grabador de números de compás @code{Bar_number_engraver}
index 44f450cf845f707d70120ba84bf5b0fcf1518935..4c73f02b1f16712f8d7c921e69a7f986f0f03b4a 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Dentro de un @code{PianoStaff}, es posible hacer que un arpegio
 cruce entre los pentagramas ajustando la propiedad
index 241a4a11608611cc6f3f0b623f848de9b21e3052..83b7a9e162523087a8032dcbbabc79c3aa10162a 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden crear arpegios que se cruzan entre pentagramas dentro de
 contextos distintos a @code{GrandStaff}, @code{PianoStaff} y
index 87bec2f7d37f75a6e02b854b85251a58e29b41d2..c163406815e40326bda31252173a6d6ac32fb2df 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden crear indicaciones metronómicas nuevas en modo de
 marcado, pero no cambian el tempo en la salida MIDI.
index 87ef63c8a2b19e2fe534299aec947a352d569910..d970b9354a1dd6eb5abb1a6b3f999fd771eef6a6 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, text"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Aunque la manera más fácil de añadir paréntesis a una indicación
 de dinámica es utilizar un bloque @code{\\markup}, este método
index 7dd8ecdba5c31ce95f4aee0ea701042da4acf3d3..54811c9fa009c52db55c637cef1ab18633715257 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, text, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 A diferencia de las inscripciones de texto, las lestras de ensayo
 no se pueden apilar en un punto concreto de la partitura: sólo se
index 00acc7d3fcb5f0b200539b5e0ebc0ca393a8daaf..592e706bd4d1054ac8c7386988b3c08bbc1c4b6a 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, keyboards, unfretted-strings"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 En determinadas situaciones es necesario crear ligaduras de
 expresión entre notas que están en voces distintas.
index c815d2434252301964a959ed84011f10a330968b..f100bd5d45271f04771600c93e709f7c72b0c6eb 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, text, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Las instrucciones @code{\\startTextSpan} y @code{\\stopTextSpan}
 permiten la creación de elementos de extensión textuales tan
index c62bdf8eb44389a3f1fa641424a2f09806dac307..26e6f477564f9e4afdda779ed07a2fb30fb7c812 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "repeats, keyboards"
 
-%% Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 
index ce7ba7486f46f0a8e0bee3960215802c8735fe71..48a7f511c2ef3a480c4f82bf7f54aee1a9f47085 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "ancient-notation, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden tipografiar «custos» en diferentes estilos.
 
index 909b87da274575221c1bb7f5590448de6c57d91e..5e1f39f2e63b85ae7ec5073b282b6ae2d0651334 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "fretted-strings, tweaks-and-overrides"
 
-%% Translation of GIT committish: 47c3d16c5044555afa49637310a7ee324b06af51
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden establecer las propiedades de los diagramas de
 posiciones de acordes por medio de @code{'fret-diagram-details}.
index ff857f9955461e14c075e501edeef6b8b0aaeca3..68bc3140747036722104ac73f06d049f922765c9 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "fretted-strings, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden establecer las propiedades de los diagramas de
 posiciones a través de @code{'fret-diagram-details}.  Para los
index 4a9ea5a4ba715dca93a44b8f4dba4a4bdce995bf..db86542c4f0f2715558fab20221caa14f8e3701e 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "editorial-annotations"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La dirección predeterminada de las plicas sobre la tercera línea
 del pentagrama está determinada por la propiedad
index 3a2b66fb125097ddf2c0fd2684ccacd1b1bb9222..c7ae5f4c2fa35b0eaafb2b209b9095c7873fc314 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 Este ejemplo demuestra cómo se puede definir el grabador de ámbito en
index 302df08a9fa4a43f77ff6506c9f7bdc313fb6608..db7339653328989926ecac3a693d56e2bb99ffc5 100644 (file)
@@ -1,9 +1,67 @@
-%% Do not edit this file; it is automatically
-%% generated from LSR http://lsr.dsi.unimi.it
-%% This file is in the public domain.
-\version "2.13.39"
+% Do not edit this file; it is automatically
+% generated from Documentation/snippets/new
+% This file is in the public domain.
+%% Note: this file works from version 2.13.46
+\version "2.13.46"
 
 \header {
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
+  texidoces = "
+
+Se pueden añadir diagramas de posiciones predefinidas para
+instrumentos nuevos además de los estándar que se usan para la
+guitarra.  Este archivo muestra cómo se hace, definiendo una afinación
+nueva y unas cuantas posiciones para el cuatro venezolano.
+
+Este archivo también muestra cómo se pueden incluir las digitaciones
+en los acordes que se usan como puntos de referencia para la búsqueda
+de acordes en la tabla, y mostrarse en el diagrama de posiciones y la
+tablatura @code{TabStaff}, pero no en la música.
+
+Estas posiciones no se pueden transportar porque contienen información
+de las cuerdas.  Hay planes para corregir esto en un futuro.
+
+"
+  doctitlees = "Definición de posiciones predefinidas para otros instrumentos"
+
+
+%% Translation of GIT committish: f23429bc5cfa9d141ef7b4509afc46c140308a1e
+  texidocde = "
+Vordefinierte Bunddiagramme können für neue Instrumente hinzugefügt werden
+neben denen, die schon für die Gitarre definiert sind.  Dieses Schnipsel
+zeigt, wie man eine neue Saitenstimmung definiert und dann eigene vordefinierte
+Bunddiagramme bestimmt.  Das Beispiel ist für das venezualische Cuatro.
+
+Dieses Schnipsel zeigt auch, wie Fingersatz in die Akkorde eingebunden
+werden kann, um als Referenzpunkt für die Akkordauswahl benutzt werden
+kann.  Dieser Fingersatz wird im Bunddiagramm und in der Tabulatur,
+aber nicht in den Noten angezeigt.
+
+Diese Bunddiagramme sind nicht transponierbar, weil sie Saiteninformationen
+enthalten.  Das soll in der Zukunft verbessert werden.
+
+"
+  doctitlede = "Eigene vordefinierte Bunddiagramme für andere Instrumente erstellen"
+
+%% Translation of GIT committish: 4ab2514496ac3d88a9f3121a76f890c97cedcf4e
+
+  texidocfr = "
+La liste des diagrammes standards prédéfinis pour la guitare peut être
+augmentée d'autres définitions spécifiques à d'autres instruments.
+Voici comment définir un nouvel accordage ainsi que quelques diagrammes
+prédéfinis pour le @qq{cuatro vénézuélien}.
+
+Cet exemple illustre aussi la manière d'ajouter des doigtés aux
+accords ; ils serviront de référence pour la boucle d'accord et seront
+indiqués dans les diagrammes et le @code{TabStaff}, mais pas dans la musique.
+
+Ces diagrammes ne peuvent pas être transposés, dans la mesure où ils
+contiennent des informations sur les cordes.  Ceci est amené à évoluer.
+
+"
+  doctitlefr = "Création de diagrammes de fret prédéfinis pour d'autres instruments"
+
+
   lsrtags = "fretted-strings"
 
 %% Translation of GIT committish: cde045f4e833aa491fb63f2222e14bef49507577
@@ -81,12 +139,16 @@ information.  This is planned to be corrected in the future.
   doctitle = "Defining predefined fretboards for other instruments"
 } % begin verbatim
 
+
 % add FretBoards for the Cuatro
 %   Note: This section could be put into a separate file
 %      predefined-cuatro-fretboards.ly
 %      and \included into each of your compositions
 
-cuatroTuning = #'(11 18 14 9)
+cuatroTuning = #`(,(ly:make-pitch 0 6 0)
+                  ,(ly:make-pitch 1 3 SHARP)
+                 ,(ly:make-pitch 1 1 0)
+                 ,(ly:make-pitch 0 5 0))
 
 dSix = { <a\4 b\1 d\3 fis\2> }
 dMajor = { <a\4 d\1 d\3 fis \2> }
@@ -142,8 +204,8 @@ primeros = {
 
     \new FretBoards {
       \set stringTunings = #cuatroTuning
-      \override FretBoard
-        #'(fret-diagram-details string-count) = #'4
+%      \override FretBoard
+%        #'(fret-diagram-details string-count) = #'4
       \override FretBoard
         #'(fret-diagram-details finger-code) = #'in-dot
       \primeros
index 225420c6edc4586608913b6dc0826024ed106986..f2f3d9c107653d05fd3967b42ef36a21e8dcd703 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "staff-notation, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Si hay un solo pentagrama en un de los tipos de sistema
 @code{ChoirStaff} o @code{StaffGroup}, el comportamiento
index 71f8ae84da9693a16cedf57832fae5b457864586..f369aea2015a4486a484f36fdd817341acfa1c70 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 He aquí una forma de imprimir un acorde en el que suena la misma nota
index 74dd132e69d2423f20692e91ed95fdfbbba8ce5c..06d9a7664d40ef6a456612047e4239172664729a 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 Al trabajar con los callbacks de un grob, puede ser de mucha ayuda
index ce4df9cf076055071ae561de77ad58c9c335accf..4a0367b91f7a7679aad4028823c647b93df89c05 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   doctitlees = "Alteraciones de estilo dodecafónico para todas las notas incluidas las naturales"
   texidoces = "
 En las obras de principios del s.XX, empezando por Schoenberg, Berg y
index ff928493d1baee20ec5d6aca44fdbe43198883e1..908d433546e715f46bf61aff0931cc56de4faa81 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 Funciones postfijas para la creación de objetos de extensión de texto
index 7e148f8de2a27eaeea54943304f539b65c025609..2d5d151269a34cf85a9e6d1da57ed3634ecb716b 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 Los objetos de extensión \cresc, \dim y \decresc ahora se pueden
@@ -49,11 +49,9 @@ une indication textuelle avec extension.
 
 
   lsrtags = "expressive-marks, tweaks-and-overrides"
-  texidoc = "The \cresc, \dim and \decresc spanners can now be redefined as
-postfix operators and produce one text spanner.  Defining custom spanners is
-also easy.  Hairpin and text crescendi can be easily mixed. \< and \> produce
-hairpins by default, \cresc etc. produce text spanners by default.
-"
+  texidoc = "Custom text spanners can be defined and used with hairpin
+  and text crescendos.  @code{\<} and @code{\>} produce hairpins by
+  default, @code{\\cresc} etc. produce text spanners by default."
   doctitle = "Dynamics text spanner postfix"
 } % begin verbatim
 
@@ -64,22 +62,6 @@ crpoco =
              'span-direction START
              'span-type 'text
              'span-text "cresc. poco a poco")
-% Redefine the existing \cresc, \dim and \decresc commands to use postfix syntax
-cresc =
-#(make-music 'CrescendoEvent
-             'span-direction START
-             'span-type 'text
-             'span-text "cresc.")
-dim =
-#(make-music 'DecrescendoEvent
-             'span-direction START
-             'span-type 'text
-             'span-text "dim.")
-decresc =
-#(make-music 'DecrescendoEvent
-             'span-direction START
-             'span-type 'text
-             'span-text "decresc.")
 
 \relative c' {
   c4\cresc d4 e4 f4 |
index 769b82d0741874d52a34f0d4a468cebc59d9481a..a8f642d51757fd6ce4b9142183a75c1422f6e0d6 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \include "english.ly"
 #(set-global-staff-size 15)
 \paper {
index e1df8cd871329daf6c7210b4ed674d5c6d422254..5d2605d1be850c84f0041e05c3f1d23b580d2ca3 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "editorial-annotations, text"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede insertar códico PostScript directamente dentro de un
 bloque @code{\\markup}.
index 72cc670dbc7b273273ea9a614f1bd99570a9177d..7c8b72874a3e73b8ab12a278da3113cb50b37004 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "contexts-and-engravers"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Del problema central de la notación, esto es, crear un determinado
 símbolo, se encargan los «plugins» o complementos añadidos.  Cada
index 9d5c482965f5107e36940519e7066010dc0012e5..216b46e9bc0847c15e7fd1dd86e2c720264740c4 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
  doctitlees = "Grabado manual de las ligaduras"
  texidoces = "
 Se pueden grabar a mano las ligaduras modificando la propiedad
index 1ff014cc16cfadb44e12a4d5e00f2c7963a45180..12fb1da8a9ad5e87112a76e022ac82b4b5a441a0 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
  doctitlees = "Escribir varios grupos especiales usando una sola instrucción \\times"
  texidoces = "
 La propiedad @code{tupletSpannerDuration} establece cuánto debe durar
index 7768a952343aa57772e5f2c73b5a4eacb81f168d..67d6aae247115a6fcc57ba9a48cad66a5284c067 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \include "english.ly"
 #(set-global-staff-size 15)
 \paper {
index 48c97b954aae03f284975d810b34418bff680353..acb732f6277767a1898b1eec13c965582588dcf3 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 Se puede simular un @qq{hammer} o ligado ascendente con ligaduras de
index f6b5275bc7dd55df49790b1565f12799e10d94a1..067ba82df807071826dcdb9e25ab9195a4b70e0f 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 #(set-global-staff-size 15)
 \paper {
   ragged-right = ##f
index f95dc11fd77df79e045b2a98a2929c6d5693fa6e..928aa857dcd637434ff04473ed57503e24022ef0 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "winds"
 
-%% Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden conseguir símbolos especiales combinando glifos existentes,
 lo que es de utilidad para la notación de instrumentos de viento.
index 76a137c2e820b4e54b4ea571eb0a2958f2905d65..f9f7e66bc4ce8e5e2b13ea7987f55c1df1665615 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "fretted-strings"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 En este ejemplo se combinan las digitaciones de la mano izquierda,
 indicaciones del número de cuerda y digitaciones de la mano
index 5dddf92ccf4ce48f66209f8a8bc6c86b8798190f..a8601a674a94a51aabdb001bbdb1d2e8b5cd12dc 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 
index 74bddd3ac61d49123458142354965dcca4d4afe4..6661f3cc2c794550811136a0a14696bdc8e77d1f 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Son posibles tanto los corchetes rectos sobre notas sueltas como
 extremos de barra sueltos en figuras unidas, con una combinación de
index cd677dc6e7f9c6206ac59806d7d8d99e3899ff0e..395ac03d37a0b675aa811af078ef2a72e3c657d1 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "simultaneous-notes, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
  doctitlees = "Forzar el desplazamiento horizontal de las notas"
 
index 894863a2269c8c9b9d590aaa669382fca90e4130..342418d1b0d99baed6a19c36f7c9412261498d7a 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "vocal-music"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Si LilyPond no cree que haya sitio suficiente para un guión separador
index 0341e93ce40147c9fbff6b51820a3fc0f1f756ca..1e65517d7fcb8717ab6227609eddbe28be8f351b 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 67e7cb93611fa389c7e86c6e47e894ff30a8395c
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 Se pueden crear tablas alternativas de diagramas de posiciones.  Se
index bf8904176ec42eee34b4a6fa825b41e98c079c53..d487b57399d166033196a4d3884a71ce887b1de7 100644 (file)
@@ -7,7 +7,7 @@
 % on melodies from Bellini's "Norma"                              %
 %*****************************************************************%
 
-\version "2.13.40"
+\version "2.13.46"
 
 #(set-global-staff-size 15)
 \paper {
index edef2c824909d5465017105d149d3310931cabd8..c52624e7167c74602f8c81eb7f541515594b226d 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Este fragmento de código basado en Scheme genera
 24 notas aleatorias (o tantas como se necesiten), basándose en la
index 2516345fc04a4d0b4c560408c3eb68b5ad852924..948f48e82c14a9abcc7786b6c6a134c6d1b38724 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%%%    Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%%%    Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 En muchos casos, las llaves que no están en la columna central se
index 56fb6623ca2eefbb1ef6522390428334be8f34be..7dfbe6340b542fb9d5ccdb1d98bf45041b95444c 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "editorial-annotations"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede cambiar el aspecto de las líneas de rejilla
 sobreescribiendo algunas de sus propiedades.
@@ -25,11 +25,11 @@ geändert werden.
 
 %% Translation of GIT committish: 9ccf7f0f5e52e074f3b7852416ad5b78718395c8
   texidocfr = "
-Modifier certaines des propriétés du cadrillage temporel aura pour effet
+Modifier certaines des propriétés du quadrillage temporel aura pour effet
 d'en changer l'apparence.
 
 "
-  doctitlefr = "Apparence du cadrillage temporel"
+  doctitlefr = "Apparence du quadrillage temporel"
 
 
   texidoc = "
index 544074da625cd7d3260638df10efbfa265099c19..b49e15d06827fba65d500c26b06e4abc7642d85a 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "editorial-annotations"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden trazar líneas verticales normales entre pentagramas para
 mostrar la relación entre notas; sin embargo, en caso de música
index c223493ce48293b3e5dba11a7a9bf974885b1526..e2d519292e13f50981217aebc6a96f6c63003e6f 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Los patrones de barrado se pueden alterar con la propiedad
 @code{beatGrouping}:
index 737deea49e29ae4a0e8a6238b5516dbb3b6cb74d..020ecefd382ce62b57f2475bbf5b53d8282fcf71 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
 
   texidoces = "
index 427f93f7bddd64b3bf3ae0b2b14f01737c7e727c..f7b92957ba01f99f23b0963f117e31e7f5f2bedd 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, fretted-strings"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Para la música de guitarra, es posible mostrar los ritmos de rasgueo,
 además de las notas de la melodía, acordes y diagramas de posiciones.
index 4cfff48ada4befacc0ef9f08e4e3a71f37611925..3c8f5385f6b82e3fe2d9500d5d9346c147f3e7bf 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Los reguladores pueden imprimirse en uno cualquiera de los estilos de
 @code{line-interface}: discontinuo, punteado, línea, trino o zig-zag.
index bd80b8c369d1ca32c4dadf4871e7b8fef8f1067c..a4bf58a8aa0f0ed0e1d2ee9732dc0cdd713d9ccc 100644 (file)
@@ -2,9 +2,9 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \header {
-%% Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 Aquí se muestra la manera de ocultar las alteraciones de las notas
index 93a66ae9ee6fc9e7e48fbc32ef0d13f591fff796..0fc3a9d4416ac941c3e4df443fc33ab4552df598 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Los cambios de dinámica con estilo de texto (como cresc. y dim.)
 se imprimen con una línea intermitente que muestra su alcance.
index 080b78a651e1143c7bb80589d4612b3cd2d4a45b..fb3088f6aad15c92eedc5cefd690f860249c8605 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "vocal-music, template"
 
-%% Translation of GIT committish: 8b9a694a483632437fb5110b3531074ddb31c04a
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
   Este fragmento de código muestra una forma de preparar un himno cuando
 cada línea comienza con un compás parcial.  También muestra cómo
index 1b8e0ef4354467aa1f507e5dbd1845b070f70feb..7ed3a6b70b6e9b79b079aa7631106a5909627d58 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Los «incipit» se pueden escribir utilizando el grob del nombre del
 instruemento, pero manteniendo independientes las definiciones del
index 363e967fcfee58ee5cb55e3c189574f283653ce3..061b77bfccd2472cd9c97f0fd646e1b7630031aa 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "keyboards"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Un corchete de arpegio puede indicar que se tienen que tocar con la
 misma mano notas que están en dos pentagramas distintos. Para hacerlo,
index 93ebf24e4710171cf8fbc4129fd04d14b6c98c5e..020425aa4bb876b36cdfa494e7af06d0a3aa96fc 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Las marcas de cesura se pueden crear sobreescribiendo la propiedad
 @code{'text} del objeto @code{BreathingSign}.  También está disponible
index a6561527b85f1ef16cfab1838a83d431bfc3c61d..1208c9bce49b8fc176e01d8bcefbdf768aa1367b 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "repeats"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 También se pueden imprimir símbolos de porcentaje sueltos.
 
index d296fc213e6776d2b824b531619b2c4191f4fcfa..7018b613b9e1295606120e3ebd40faf0bf9dc608 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "keyboards, percussion, fretted-strings, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Ésta es una plantilla bastante avanzada, para un conjunto de
 jazz. Observe que la notación de todos los instrumentos está en
index dbe655bee04deb11b3dbc662f45c31235b065b69..2aafeebf9a860dd10328e216d81f72b45722bb46 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Cuando se produce un cambio de clave, el símbolo de clave se imprime a
 un tamaño menor que la clave inicial.  Esto se puede ajustar con
index dc1a54064128d6df2c864af4919b2a2cf3b5f960..0643eac53eb46db37632d4d9e119b7c6be6219b3 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \include "english.ly"
 
 #(set-global-staff-size 15)
index 60f997dfdee7f235f24191ca2ebf20cdc375c219..226e34f53c9e584026cb016cf46d006d2d47d707 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La tablatura se puede formatear utilizando letras en lugar de números.
 
index b5149c0f5d26ac212a9da618c1dcb252b4e5e9ec..3bf2c717a6ad557c8f24a3de763bbafa187b0bdb 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden aplicar puntas de flecha a los elementos de extensión de
 texto y de línea (como el Glissando).
index 6d85d9eecdf3d5f8d14b4e526e2d529e3d091728..174bf3d042aa443769c5d0a252d0325ab918ca20 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "text, vocal-music"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La alineación horizontal de la letra se puede ajustar sobreescribiendo
 la propiedad @code{self-alignment-X} del objeto @code{LyricText}.
index 602227f3a5b2fa9f418cbd8cbc6295483cd71fd3..a062e9d982858bd16aede4d35c0986a72baf5b86 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 El «Makam» es un tipo de melodía de Turquía que
 utiliza alteraciones microtonales de 1/9 de tono.  Consulte el
index be216b7d8271fcf1f760eb5dc8ea11854bfed55d..26416ef4dd8e75ec13146336416e0ef00fd00c69 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Las ligaduras de expresión se pueden construir con patrones de
index 1ade793d5238d8f63a21484c5f10a3f02efaa42f..e28111ae7e677e8f9eeba9e1b67add1d4e5eeb00 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "staff-notation, editorial-annotations"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede engrosar una línea del pentagrama con fines pedagógicos
 (p.ej. la tercera línea o la de la clave de Sol).  Esto se puede
index 0feabc1f3be520eb21bc7d35588c00e301c166f2..6df2e0a12783847bde737a68fec949f08b8eca6e 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "repeats, staff-notation, editorial-annotations"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Este fragmento de código proporciona una solución alternativa a la
 producción de contadores de compás utilizando repeticiones
index 26cf952d3c86f67fed8ab306ac351796bca3681a..4fe709419ee47d5c8f9f48ba9851e9fdfb174fba 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "staff-notation, ancient-notation, contexts-and-engravers, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La disposición «mensurstriche» en que las líneas divisorias no
 están dibujadas sobre los pentagramas, sino entre ellos, se puede
index c2142eb3330c8e21f868859440328342ed41a628..5beda27c4960067e6e42371ab9c05fabc08abc94 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Utilice un texto de marcado para sustituir el glifo de clave (TAB) con
 una fuente tipográfica moderna.
index fb8c6f382b8753242f93abbbca03bb04035ce06c..fc7cb286345d89ffa53e727637f07dce1fef7d97 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Las abreviaturas se encuentran definidas dentro del archivo
 @file{ly/script-init.ly}, donde las variables @code{dashHat},
index 491b02ef144f52c1c9ef9f19874304c64335b1b3..d71848db93a6e90436c650d1fa04dee588f4801a 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, simultaneous-notes, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Cuando se puede una nota en la voz superior para evitar la colisión
 con una nota de otra voz, el comportamiento predeterminado es
index be0a59073a88dabb5e83e5f27a1a103efa697dca..b3886467b366cc0af0cbe54e61d59be819a05cf9 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede ajustar la posición vertical de una ligadura de
 expresiónutilizando la propiedad @code{positions} del objeto
index 8a7103e101d9a45bf9c8098445f47d14b54b5aff..a6d5d6c2ed3fb073e51f9b09fb1dc08b1d495337 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, text"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 texidoces = "
 Los elementos de marcado aplicados a un silencio multicompás se
 centran encima o debajo de éste.  Los elementos de marcado extensos
index 84f1ea29789cdcda726668d1ee080d0675a8550d..39fb0704891511fafd2e723ee93e28e7b146ae65 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "staff-notation, contexts-and-engravers, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede utilizar la propiedad
 @code{systemStartDelimiterHierarchy} para crear grupos de
diff --git a/Documentation/snippets/new/defining-predefined-fretboards-for-other-instruments.ly b/Documentation/snippets/new/defining-predefined-fretboards-for-other-instruments.ly
new file mode 100644 (file)
index 0000000..98197b0
--- /dev/null
@@ -0,0 +1,167 @@
+\version "2.13.46"
+
+\header {
+  lsrtags = "fretted-strings"
+
+%% Translation of GIT committish: cde045f4e833aa491fb63f2222e14bef49507577
+  texidoces = "
+
+Se pueden añadir diagramas de posiciones predefinidas para
+instrumentos nuevos además de los estándar que se usan para la
+guitarra.  Este archivo muestra cómo se hace, definiendo una afinación
+nueva y unas cuantas posiciones para el cuatro venezolano.
+
+Este archivo también muestra cómo se pueden incluir las digitaciones
+en los acordes que se usan como puntos de referencia para la búsqueda
+de acordes en la tabla, y mostrarse en el diagrama de posiciones y la
+tablatura @code{TabStaff}, pero no en la música.
+
+Estas posiciones no se pueden transportar porque contienen información
+de las cuerdas.  Hay planes para corregir esto en un futuro.
+
+"
+  doctitlees = "Definición de posiciones predefinidas para otros instrumentos"
+
+
+%% Translation of GIT committish: f23429bc5cfa9d141ef7b4509afc46c140308a1e
+  texidocde = "
+Vordefinierte Bunddiagramme können für neue Instrumente hinzugefügt werden
+neben denen, die schon für die Gitarre definiert sind.  Dieses Schnipsel
+zeigt, wie man eine neue Saitenstimmung definiert und dann eigene vordefinierte
+Bunddiagramme bestimmt.  Das Beispiel ist für das venezualische Cuatro.
+
+Dieses Schnipsel zeigt auch, wie Fingersatz in die Akkorde eingebunden
+werden kann, um als Referenzpunkt für die Akkordauswahl benutzt werden
+kann.  Dieser Fingersatz wird im Bunddiagramm und in der Tabulatur,
+aber nicht in den Noten angezeigt.
+
+Diese Bunddiagramme sind nicht transponierbar, weil sie Saiteninformationen
+enthalten.  Das soll in der Zukunft verbessert werden.
+
+"
+  doctitlede = "Eigene vordefinierte Bunddiagramme für andere Instrumente erstellen"
+
+%% Translation of GIT committish: 4ab2514496ac3d88a9f3121a76f890c97cedcf4e
+
+  texidocfr = "
+La liste des diagrammes standards prédéfinis pour la guitare peut être
+augmentée d'autres définitions spécifiques à d'autres instruments.
+Voici comment définir un nouvel accordage ainsi que quelques diagrammes
+prédéfinis pour le @qq{cuatro vénézuélien}.
+
+Cet exemple illustre aussi la manière d'ajouter des doigtés aux
+accords ; ils serviront de référence pour la boucle d'accord et seront
+indiqués dans les diagrammes et le @code{TabStaff}, mais pas dans la musique.
+
+Ces diagrammes ne peuvent pas être transposés, dans la mesure où ils
+contiennent des informations sur les cordes.  Ceci est amené à évoluer.
+
+"
+  doctitlefr = "Création de diagrammes de fret prédéfinis pour d'autres instruments"
+
+
+  texidoc = "
+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.
+
+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.
+
+"
+  doctitle = "Defining predefined fretboards for other instruments"
+}
+
+% add FretBoards for the Cuatro
+%   Note: This section could be put into a separate file
+%      predefined-cuatro-fretboards.ly
+%      and \included into each of your compositions
+
+cuatroTuning = #`(,(ly:make-pitch 0 6 0)
+                  ,(ly:make-pitch 1 3 SHARP)
+                 ,(ly:make-pitch 1 1 0)
+                 ,(ly:make-pitch 0 5 0))
+
+dSix = { <a\4 b\1 d\3 fis\2> }
+dMajor = { <a\4 d\1 d\3 fis \2> }
+aMajSeven = { <a\4 cis\1 e\3 g\2> }
+dMajSeven = { <a\4 c\1 d\3 fis\2> }
+gMajor = { <b\4 b\1 d\3 g\2> }
+
+\storePredefinedDiagram #default-fret-table \dSix
+                        #cuatroTuning
+                        #"o;o;o;o;"
+\storePredefinedDiagram #default-fret-table \dMajor
+                        #cuatroTuning
+                        #"o;o;o;3-3;"
+\storePredefinedDiagram #default-fret-table \aMajSeven
+                        #cuatroTuning
+                        #"o;2-2;1-1;2-3;"
+\storePredefinedDiagram #default-fret-table \dMajSeven
+                        #cuatroTuning
+                        #"o;o;o;1-1;"
+\storePredefinedDiagram #default-fret-table \gMajor
+                        #cuatroTuning
+                        #"2-2;o;1-1;o;"
+
+% end of potential include file /predefined-cuatro-fretboards.ly
+
+
+#(set-global-staff-size 16)
+
+primerosNames = \chordmode {
+  d:6 d a:maj7 d:maj7
+  g
+}
+primeros = {
+  \dSix \dMajor \aMajSeven \dMajSeven
+  \gMajor
+}
+
+\score {
+  <<
+    \new ChordNames {
+      \set chordChanges = ##t
+      \primerosNames
+    }
+
+    \new Staff {
+      \new Voice \with {
+        \remove "New_fingering_engraver"
+      }
+      \relative c'' {
+        \primeros
+      }
+    }
+
+    \new FretBoards {
+      \set stringTunings = #cuatroTuning
+%      \override FretBoard
+%        #'(fret-diagram-details string-count) = #'4
+      \override FretBoard
+        #'(fret-diagram-details finger-code) = #'in-dot
+      \primeros
+    }
+
+    \new TabStaff \relative c'' {
+      \set TabStaff.stringTunings = #cuatroTuning
+      \primeros
+    }
+
+  >>
+
+  \layout {
+    \context {
+      \Score
+      \override SpacingSpanner
+        #'base-shortest-duration = #(ly:make-moment 1 16)
+    }
+  }
+  \midi { }
+}
index 4408ee9d5e52142addb299c52b2eb54431643acb..3fcd73a31b064aacd74195671cb70c1ff0a29d72 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 LilyPond también proporciona funciones de formato para imprimir
 números de grupo especial diferentes a la propia fracción, así
index 4bea0db9d26b4251bddbe10c20207b810eaad08f..47d6d65f585c8c33f49693e9a1e883756d6eb995 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   doctitlees = "Armaduras de tonalidad no tradicionales"
   texidoces = "
 
index 8edd187f59d5155a87597f685197478f564dd414..86031cd32862f9141272205b97fde34993a6a422 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 67e7cb93611fa389c7e86c6e47e894ff30a8395c
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Las cabezas de nota de notación fácil utilizan la propiedad
index 7e7a47008d98b601a3843914002b81fa17171c9f..d545791965bd8cbe7fd78d386f290f32b7af4e98 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches, staff-notation, vocal-music, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Esta plantilla muestra el uso de contextos @code{StaffGroup} y
 @code{GrandStaff} anidados para sub-agrupar instrumentos del mismo
index 60883b5eaad6a4407d945a4dcaf5591ea4e442c8..ca906690a95e01c1f7bf7f2137693cd53e93204a 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches, text"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Internamente, @code{\\ottava} establece las propiedades
index 98cf687f4b1467fd608bfbbf3b3b6d5055c3b318..635b09f58819fb18be6d445cd135ee986037bcf9 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%%   Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%%   Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 
index 357ae5ccacab5564cffe7fc0e7b4864b5b3a080d..8d348210b3c766c1c463ae0b15c1eeff00a7a2a7 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "repeats, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden mostrar los contadores de las repeticiones del tipo
 porcentaje a intervalos regulares mediante el establecimiento de
index 0e9e229e81d83d08088e91f7023fed0c0d9ef6d1..056ec6689e3e797fad914a63358a6ae6f957740e 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "repeats"
 
-%% Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Las repeticiones de compases completos de más de dos repeticiones
 pueden llevar un contador si se activa la propiedad adecuada, como se
index 7c45880523861639057fe7883bdb08bf76c11c97..a47eddcacefec2c012d738dda22d096cbc9560d4 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
  doctitlees = "Permitir saltos de línea dentro de grupos especiales con barra"
  texidoces = "
 Este ejemplo artificial muestra cómo se pueden permitir tanto los
index 1a26f93cf525caee89c6b4364d2af9870a4fa907..258bc656307a1be261763593d38cb8002c9fd2a0 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "keyboards, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Presentamos a continuación una plantilla de piano sencilla con algunas
 notas.
index b04b1b5c29d6012f8dd7dd88e68d4569b86caff4..cca22291baff162196f9dd32ce1759305a019024 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Muchas partituras de piano tienen las indicaciones dinámicas centradas
 entre los dos pentagramas.  El contexto @code{Dynamics}, si se sitúa
index 50f03de360bd446d1e14de355606ddc156efc9cd..bac62057cb16a003ce4b93b9b2219a2170492993 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "text, keyboards, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 En lugar de tener un pentagrama dedicado a la melodía y la letra, ésta
 se puede centrar entre los pentagramas de un sistema de piano.
index 5b736214683132367f2deed7d84fc2c1e2f5c7a6..66099f2ed7673a6b929284240d05afe80bd43213 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "vocal-music, keyboards, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 He aquí el típico formato dde una canción: un pentagrama con la
 melodía y la letra, y el acompañamiento de piano por debajo.
index 05de3c4a68bad400278f4115ee0deefa2bedc989..a88985896814e9572f40f8ecb05a4dfe334db092 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \include "english.ly"
 #(set-global-staff-size 15)
 \paper {
index d5fdd9c1a62d8ec008d1924a8eda5d685e5a3c1c..3aa280700836947c151faaf0ff26a387328920f3 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "fretted-strings"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Es posible ejercer un mayor control sobre la colocación de las
 digitaciones de la mano derecha estableciendo el valor de una
index ec30ce7e7f796d14534688018c5f43f111af63b7..0562c1812e5cccc478c7f916290a646bc21820f5 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "fretted-strings"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La polifonía se crea de la misma forma en un @code{TabStaff} que
 en una pauta normal.
index 600589be0886ea6273971cf8beec0260449384f4..b9583ffaa6055d28c6560ab83d9ea43c7ea5ae0e 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Si necesitamos alargar o acortar un símbolo de arpegio, podemos
 modificar independientemente los extremos superior e inferior.
index 9548684304b0ddf0c27c631d0a64aeac78aa6581..7ddfb0fe41a5c3e3215611b9dce172804ce64172 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Cuando se colocan figuras sobre líneas adicionales, sus barras se
index bb0849e06c79a420c24c1c0bb80a8356c2574db8..e8a790fa280b64ebd82c5e10a3a02f8d41ef6e11 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Al establecer la propiedad @code{'strict-grace-spacing} hacemos que
index e8520a4afebcf29d8a62be6beb61a305b032a3dc..fd20084816af4bc6fcc0b29232773189179bfff3 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
  doctitlees = "Posicionar los silencios multicompás"
  texidoces = "
 A diferencia de los silencios normales, no existe una instrucción
index 27ca8609397f3f3ad0e5b22552e9e0d770d5fb75..0d2439413c484dea73925d518e19ab5f948243ac 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, editorial-annotations, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Los elementos de marcado de texto deben tener la propiedad
index 49192e87ab7340a587d6eab9b20a916c8c073872..ea44339d6a6a73b93d4b6ece923818d4c8a5dc23 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 doctitlees = "Evitar que se añadan becuadros adicionales automáticamente"
 
 texidoces = "
index 9820abaaaeac426fde61cba973e7c919470fd3df..b1778caee05fc9bdf5ef96ddc1291b2eda6705e2 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 doctitlees = "Evitar que se impriman becuadros cuando cambia la armadura"
 
 texidoces = "
index f9a1c852f6ddc8d1b721b72a2bab040ec2d64e3b..f8ea83a38e5261cb9a20b7213e5545b51e5589ed 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "repeats, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede imprimir una línea divisoria de la forma @code{|:} al
 principio de la pieza, sobreescribiendo la propiedad correspondiente:
index 0ec6795729fc523818ec581b0f6cdb77ab652889..3828075f10f50764b7ac10e22bb6391f5acbe88b 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Se pueden imprimir los números de compás a intervalos regulares
index 0e0e4dde21451b09463e077524b2abe6625dddeb..5a5f638b49c533a44f606aa1c2158ed1f148895b 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Los números de compás también se pueden imprimir dentro de rectángulos o de circunferencias.
index 23b4ee2fce3c31f12c9a72a11750416ce2adda9f..abb953eda40368c3b54d12bf440e99bef01fe459 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden imprimir reguladores con un círculo en la punta (notación
 «al niente») estableciendo la propiedad @code{circled-tip} del objeto
index 4e95292632e729043c486977dd5285e8a9256c44..0b7ab6585199d7ff17da97fc005816e019fa0a8e 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "text"
 
-%% Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 
index 02d2698ef7092e355eecb81c0c1160548741f901..aa001a7cf4143289c1e683514a96dd8ad14bf8f3 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "text"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Aunque normalmente las marcas de texto sólo se imprimen sobre el
 pentagrama superior, también se pueden imprimir en otro pentagrama
index cf91d61acc67ea6d6f4c95df15c3d4acdb65797f..282aeed1467452192c28c0fa1654f1f1bf7b8ebb 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, expressive-marks, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 De forma predeterminada, las indicaciones metronómicas y las
 letras de ensayo se imprimen encima del pentagrama.  Para
index 261f1989138822e6d8b5af92abedb11d4fcda2ac..7c095ba5494d22bbd279a9f682f860a72eb156a9 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede usar el contexto @code{NoteNames} para imprimir el valor
 textual de las notas.  La propiedad @code{printOctaveNames} activa o
index 8b32b93de5e73a7dd21bba0e26e206f1f470592a..17ebe598f222b0c65973063f0d69f61a49c5888c 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 De forma predeterminada se suprime el número del primer compás de una
index af3e7e83c69080d71711033d2ed87e72faff99d1..769e0d60be86ae950d0bd4fafe05839b9e04e26b 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches, staff-notation"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Los pasajes citados tienen en cuenta la transposición de la fuente
 tanto como la del destino.  En este ejemplo, todos los
index db4e5e1bf14235bff7a25b6fa42624a8b290c7f2..d2a80281c8b8ef0457ce7bb1c54c42fd59ea7022 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "staff-notation"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 La propiedad @code{quotedEventTypes} determina los tipos de eventos
index 4309fea15073777d347eb65106b3cb91d754e48d..988c5eec15683c6951a7bb921dc883b4f0599902 100644 (file)
@@ -4,7 +4,7 @@
 \version "2.13.39"
 
 \header {
-%% Translation of GIT committish: 67e7cb93611fa389c7e86c6e47e894ff30a8395c
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 El ejemplo siguiente muestra cómo se pueden realizar diagramas de
@@ -18,6 +18,10 @@ digitación para instrumentos de viento.
 
 
 
+
+
+
+
 %% Translation of GIT committish: 496c48f1f2e4d345ae3637b2c38ec748a55cda1d
   texidocfr = "
 Cet exemple illustre la manière de créer et afficher des indications de 
index 9e2e2d696e3723ae9ec4412754de080f37dfdef5..4ea0cf6a179eaef8d645c89b51c742dbae5073d5 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Los valores predeterminados para las notas de adorno están
index b9ccaabf703e303d28383dd4ee4f7a5ebb752782..08fbead282b1a08f6f0e4451584e5f1dd9b7bd90 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, contexts-and-engravers"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Se pueden eliminar completamente los números de compás quitando el
index 34a06af8146a69002b694bf2583b76e07cc67ec4..e0f1de2035d0d6001f193d69f8cd22110f605e4a 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 De forma predeterminada, las líneas divisorias en los grupos
 StaffGroup, PianoStaff o GrandStaff se conectan entre los pentagramas.
index 9860646e0a0de392d56e89cb7c3196cc393c5e26..63bf4f2d0bd4fcfb73b890327be8873d4a4ee1e8 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "staff-notation, tweaks-and-overrides, breaks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 El primer pentagrama vacío también se puede suprimir de la
 partitura estableciendo la propiedad @code{remove-first} de
index 0b6208480dcd2e64262619199ecbc1cd2e686b38..c485be21644917c418e2293140d5947928607c64 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \include "english.ly"
 #(set-global-staff-size 15)
 \paper {
index 63b049b43fcbad41998a454714cea82719441680..11fb9e8a063802018434d2455d9ec87b5d9450cb 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, ancient-notation, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   doctitlees = "Estilos de silencios"
   texidoces = "
 Los silencios se pueden imprimir en distintos estilos.
index 5e2330fdb58666980bd299c815f5a54ce25ebb32..17b3814e3b3af8d3be4c5bfdbf6b12fd6db27f61 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Para tipografiar las barras agrupadas en la forma @code{3-4-3-2} sólo
 es necesario modificar la estructura de pulsos:
index a78b67d6086461b546c29a18d7bcd043a42bf7ea..dce585eeb0b9faa61663261e31a99ee8a3b6e21e 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \include "english.ly"
 #(set-global-staff-size 15)
 \paper {
index 8a8387f3e0a3fc2f5acb3a19f660e2a6bb8adc55..67f6a335225a859beb504b2d89f96407ffc594ba 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \header {
   lsrtags = "headwords"
   texidoc = "Random complex notation"
index 508d14fc0c934096a279bab3beff86ff70f57a91..7297d01f1563ee9cd36e6e2f78ee23f3ea26b6af 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Si la nota que da fin a un regulador cae sobre la primera parte de
 un compás, el regulador se detiene en la línea divisoria
index 2ffeb079f31a56ecdcfedfacb8ede5d339ce6ae5..9373e38d08e1a1bd2724510f5547209ffde28dba 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "staff-notation, tweaks-and-overrides, paper-and-layout"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden insertar separadores sistema entre los sistemas de una
 página.  Se puede usar cualquier elemento de marcado, pero
index 66109c390108657bfa85c42f4fe3f3693d67f55d..574be3f0c3146b4b2fa1cdb4c8890cdd3345a6e7 100644 (file)
@@ -2,9 +2,9 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \header {
-%% Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 
index f7727b9a3c9feb7425789eff22f20288b0ef79f6..de93f4dc6216a0003f1cd83ab3b99a9056553f98 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Si los reguladores son demasiado cortos, se pueden alargar
 modificando la propiedad @code{minimum-length} del objeto
index c5a1826758ccfa6fbf22636412a748b06b35ee02..e75436f44a1108ec27a768d4298c9d716b99f4e5 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "repeats"
 
-%% Translation of GIT committish: 67e7cb93611fa389c7e86c6e47e894ff30a8395c
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 De forma predeterminada, los corchetes de primera y segunda vez se
 trazan encima de los finales alternativos completos, pero es posible
index 8a44adeb7fec5989953915b1b29110112c5d1160..f04a5c4c0a111f8e64727581d0c213bd6d676fc6 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "chords"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se pueden imprimir los acordes exclusivamente al comienzo de las
 líneas y cuando cambia el acorde.
index 9bf193f310277ed39caca0d584ad024d5a0286e8..b6269abfdf9aaae5f6c84481a2b8fdc389cf92ee 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
   lsrtags = "expressive-marks, tweaks-and-overrides"
index 5cdf0541564f8891c9b8e9540cb4b7605f9d3118..400105f42d95bf28d386f1cea9626a3500b7f1c3 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "chords"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Al juntar nombres de acorde en cifrado americano, melodía y letra,
 obtenemos una hoja guía de acordes o «lead sheet»:
index 458effd4882eaa6ae952bfef5fd09f1c9c15b95d..224565b6dac0aa60e883af3ff1392eb98378cd22 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \include "english.ly"
 #(set-global-staff-size 15)
 \paper {
index 1a5d5f25019d49ba1d81bb83d122bb22ca3796a6..c794afc305faffe6f89d5770ab758eb847b63942 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "vocal-music, chords, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Esta plantilla facilita la preparación de una canción con melodía,
 letra y acordes.
index b57604957cf4f89ff9674d8cf8c5d4d8826422fa..f3edd3c30c38738df8ed2802fd36c4725bc9e64d 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "vocal-music, chords, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Presentamos a continuación un ejemplo de plantilla para una hoja
 guía de acordes con melodía, letra, acordes y diagramas de
index c200bbebb2c155886bcb5a11284900916573354d..873f79e2a5ca6adbf184829162a0508f36b42a24 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "chords, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 ¿Quiere preparar una hoja guía de acordes (o «lead sheet») con
 melodía y acordes?  ¡No busque más!
index e78889a5bb14fc6e34c70891a29c0cba3b18a41a..4e437345d060a9f61c3790ce71750d2513a936d9 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "vocal-music, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Esta pequeña plantilla muestra una melodía sencilla con letra. Córtela
 y péguela, escriba las notas y luego la letra. Este ejemplo desactiva
index 7ec07c004b521dd86e56d07069940b305e72e1a9..656fd9dda0f05b64ac086310151ee04f4b711e73 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Esta plantilla simple prepara un pentagrama con notas, adecuado para
 un instrumento solista o un fragmento melódico. Córtelo y péguelo en
index a8a1cbeb82ab54488d748cba70970bb903df116a..b488a91080920a0572a47e4f0d3ff1346974e95a 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   doctitlees = "Marca de pizzicato de chasquido (`pizzicato de Bartók')"
   texidoces = "
 El pizzicato de chasquido (también llamado @q{Pizzicato de Bartók}) es un
index 12fba0ee4ef49c124a6c4c3aae9a289fda79b8c8..493724f556420c4ffe8bc421bc1d8aa8c157b3b8 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \include "catalan.ly"
 #(set-global-staff-size 15)
 \paper{
index 9b499eba8386500796f69342467874212f23f534..bee815cc0b72eccded10e57d7a9e6b0cd6a98722 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "text"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Los textos independientes se pueden disponer en varias columnas
 utilizando instrucciones @code{\\markup}:
index ae5531ca71d38bc1c7f9cdec16604be32d094fab..dab025568ddba47a416b09bd8614080aa78ea9de 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 La dirección de las plicas se contola de la misma forma en la
 tablatura que en la notación tradicional. Las barras se pueden
index 1684536830695798daff45bd57ffb85c898bcb1b..83f3e8506312db826043de343c108c674d3a99c6 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "unfretted-strings, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Esta plantilla muestra un cuarteto de cuerda normal. También utiliza
 una sección @code{\\global} para el compás y la armadura
index 7d6d38789135b6cae56c05511d10d797d8a9dfe6..b6a3c671fad5983b6a06cb0dd501460d334d9e4e 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "unfretted-strings, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 El fragmento de código @qq{Plantilla de cuarteto de cuerda} produce un
 resultado satisfactorio para el cuarteto, pero ¿y si tenemos que
index 999b1823c3984f2c48ac6243e446f943fac90576..b903ce7d30682312f1c5ea10292929c2ff1b36f4 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 
index dfbfec4cf85f761ad91a9b3bdd18c7e6efdc730b..2ff592bc25716498f2d4e2e8a8e1f778af3c19ed 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 \include "english.ly"
 #(set-global-staff-size 15)
 \paper {
index 4046ae3ec58a4e7f805d10bbd78986e0b2514940..769703a9db23b0c932753510757e7335d768dcc6 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, tweaks-and-overrides"
 
-%% Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 A veces, la indicación de compás no debe imprimir la fracción completa
index 479360a904a8c6c364f42813227e840ba271ae19..c025eacd97d60aace5e30a6a87887a3a0d9f3af5 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "ancient-notation, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 A modo de alternativa para obtener auténticos «incipit»
 independientes de la partitura principal, se incluyen como
index f5595067203d6ca63d524075f277b002aa20658f..6bf4238e6eb18762604a94abfc4916e613b6e6f5 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 doctitlees = "Transportar música con el menor número de alteraciones"
 texidoces = "
 Este ejemplo utiliza código de Scheme para forzar las
index af510877aa8fc39aedfd8f460ac709fca7fc0f9c..3b9652962c1e0ab60a79fd2ae4801b617b45116e 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "pitches, staff-notation, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   doctitlees = "Trucaje de las propiedades de clave"
   texidoces = "
 La instrucción @code{\\clef \"treble_8\"} equivale a un ajuste de
index 471439e892e524bb5c7aaa0b1704551a5ccf0276..b3163ee810fab9743c56cb48ed9bb676037754dd 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 La disposición de las expresiones de adorno se puede cambiar a lo
index 6f1a16f1d1becc585d1b44ed291e61721616d83b..4c6f3f8c330b029e44c928271b781142c409ff24 100644 (file)
@@ -33,7 +33,7 @@
 
 
 
-\version "2.13.40"
+\version "2.13.46"
 #(set-global-staff-size 15)
 
 %%%
index 0ae477c5c53337b45c293768a34ac32915618326..f8b55cd3ffa45918505a85565ff81d996ec9f756 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "staff-notation, contexts-and-engravers"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Se puede usar el delimitador de comienzo de un sistema
 @code{SystemStartSquare} estableciéndolo explícitamente dentro de
index b45322426c1faddc0e43eb5f323e3e250f19f186..e4e5a68692466e53e6bce745fae0633812a2dae6 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Se pueden imprimir estilos alternativos del corchete o gancho de las
index 1f0134c37662219ad3a3139781e39246fdbc2757..c865dfd029a7d368cfa80cb99f9da37f466d28bc 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks, vocal-music"
 
-%% Translation of GIT committish: 8b9a694a483632437fb5110b3531074ddb31c04a
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 El corchete de arpegios @code{arpeggioBracket} se puede usar para
 indicar la división de voces cuando no hay plicas que puedan ofrecer
index 3bb1663d22537381599df857edabc25389778268..1202a641a73d9b55a89c22db659af08af55e0e9c 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Algunos compositores escriben dos ligaduras cuando quieren acordes
 legato.  Esto se puede conseguir estableciendo @code{doubleSlurs}.
index f41bd73091ed00700dc2ca5d933f08c50f49250f..a4096debc065eac346212e7f8e96bfa9d14b526f 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Es posible aplicar la barrita que cruza la barra de las
index d086c18b7d5bbfd129ac50f22671aedb0d379024..bd20f30da6883be78bad943f0f968ef45f45dbb7 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 
index 1abadc54c647a556e91682e5c7935c173ff3c436..5d5fd1513cbc00efbc16281e196b5a62e0507a70 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 
index f161cfd76c522312f4b3a27a150f842b1dce830f..ee5ac5e6dfe839d0d7775c1623cc2111997fd5f3 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "rhythms"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
  doctitlees = "Uso de ligaduras en los arpegios"
  texidoces = "
 En ocasiones se usan ligaduras de unión para escribir los arpegios.
index de2dea5510f1db8a8e0f80a6d24e611f3ee5f758..e820c33a40e22de431e5ec6577a9d62234251c4b 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "tweaks-and-overrides, spacing"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Mediante el establecimiento de la propiedad @code{'Y-extent} a un valor
 adecuado, todos los objetos @code{DynamicLineSpanner} (reguladores e
index 502f51533803571aa9176d9c352844b990542e58..de437aca4ae2bc3f3be7603376dee357af4bd9f2 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "expressive-marks"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Las expresiones dinámicas que se comienzan, terminan o se producen
 en la misma nota se alinean verticalmente.  Para asegurar que las
index 9e0bd3d795675a62fe8a6ffed60c6d0dedf084d4..2ef6095e2e7988f63b25e48fc1f5446dea406c02 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "vocal-music, tweaks-and-overrides, spacing"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Este fragmento de código muestra el uso de las propiedades de
 contexto @code{alignBelowContext} y @code{alignAboveContext} para
index 5e68a12edb2dccc3c94ec6fc851f9bee11c664ce..6fafe76fe2f5e6f42c22688627a3c350fdb33bba 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "chords, tweaks-and-overrides"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Allí donde se utilicen líneas extensoras para el bajo cifrado mediante
 el establecimiento de @code{useBassFigureExtenders} al valor
index c2989a63287c7667e06cea5f324f4a90dd354b0b..dca5718ae74ec7620c92b0ccace9dadfc357a483 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "vocal-music, keyboards, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 
 Esta plantilla añade una reducción de piano automática a la partitura
index a4bbc993cb3cb7098d470dd9a365869c5b8f3814..20916b95441b950c1d0f14bbb349c780edde5e49 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "text, vocal-music, contexts-and-engravers, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Esta plantilla es, básicamente, la misma que la sencilla plantilla
 @qq{Conjunto vocal}, excepto que aquí todas las líneas de letra se
index 9e1b671b24d7973da787182084c704827a01ecfe..79d8d3d5801f0e292d4714a5532cfedd8dd13565 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 Esta plantilla crea una partitura que comienza con una estrofa para
index dd5088bf537fefca1c97ba27793e338ecaf98733..70efd9402ecc8aebdaa8728f7b993328cac909f0 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "vocal-music, template"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 He aquí una partitura vocal estándar para cuatro voces SATB. Con
 grupos mayores, suele ser útil incluir una sección que aparezca en
index fa174df890c52fca1034ff51733168bc23dfded0..780715643d47b6c3aba2990786fef3194bf62484 100644 (file)
@@ -6,7 +6,7 @@
 \header {
   lsrtags = "repeats, staff-notation, chords"
 
-%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
+%% Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 Mediante la adición del grabador @code{Volta_engraver} al
 pentagrama pertinente, se pueden poner los corchetes de primera y
index 889dbcc59542583667f9f6834f9cbbfed74205a1..c2b71b12de58c94d47425c0714d96c9669b0d57f 100644 (file)
@@ -2,7 +2,7 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 #(set-global-staff-size 15)
 \paper {
   line-width = 16\cm
index f91af70dd8879cdab4f33072214db5e0693f89a6..d0a56e9fa42b79465389b5ba7f7993d0d468ef21 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%%%    Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%%%    Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
 
   texidoces = "
 
index 7832329e14f735300e1bd6cffe80e639ed66f5e6..e457b55c687b7be9f2ba50c96b40ac0a4cd54c2c 100644 (file)
@@ -2,10 +2,10 @@
 % generated from Documentation/snippets/new
 % This file is in the public domain.
 %% Note: this file works from version 2.13.36
-\version "2.13.40"
+\version "2.13.46"
 
 \header {
-%%%    Translation of GIT committish: 298a2c322d7e4f437f3dd1a24db2839e3f35acce
+%%%    Translation of GIT committish: a874fda3641c9e02f61be5c41b215b8304b8ed00
   texidoces = "
 El fragmento de música que aparece a continuación presenta todos los
 diagramas de viento madera que se encuentran definidos en LilyPond por
index 75226eb5d31ea02b551612aa1e27a514fda4c453..018b151f1e7ec9d77949eda4c81b267043de258a 100644 (file)
@@ -1058,9 +1058,6 @@ Moving the cursor in the LilyPond text moves the cursor in the graphical
 view, and any syntax errors in your LilyPond tweaks are highlighted in
 the text view when printed from there.
 
-@warning{Denemo officially supports an outdated Lilypond version 2.8.7,
-which lacks many of the features added since then.  The Denemo developers
-are actively working to bring it up to our present stable version, 2.12.}
 @divEnd
 
 @divClass{column-center-top}
index 61a0ce4b196720979de4a479a51bf5a2916d4eff..7bd1879cc86f735550c72a65af22cd4bc95196e1 100644 (file)
@@ -8,6 +8,18 @@
 
 @c used for news about the upcoming release; see CG 10.2
 
+
+@newsItem
+@subsubheading LilyPond 2.13.45 released!  @emph{Jan 3, 2010}
+
+We are happy to announce the release of LilyPond 2.13.45.  This
+release contains the usual number of bugfixes.  However, a number
+of critical issues still remain, so this release is intended for
+developers only.
+
+@newsEnd
+
+
 @newsItem
 @subsubheading Beta test three of 2.14 -- LilyPond 2.13.44 released! @emph{Dec 25, 2010}
 
diff --git a/VERSION b/VERSION
index 8d250c8f27228c90c257e346da30eb464c793792..3fc2309ba1664f11c61ff24b2acad4ea2c0ad601 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1,7 +1,7 @@
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=2
 MINOR_VERSION=13
-PATCH_LEVEL=45
+PATCH_LEVEL=46
 MY_PATCH_LEVEL=
 VERSION_STABLE=2.12.3
-VERSION_DEVEL=2.13.44
+VERSION_DEVEL=2.13.45
diff --git a/input/regression/clef-oct-visibility.ly b/input/regression/clef-oct-visibility.ly
new file mode 100644 (file)
index 0000000..0f8d480
--- /dev/null
@@ -0,0 +1,28 @@
+\version "2.13.45"
+
+\header {
+
+    texidoc = "Octavation signs may be added to clefs.  By default,
+their break-visibility is derived from the associated clef, but it may
+be overridden explicitly. The initial treble_8 clef should not have an
+8, while the treble_8 clef after the tenor clef should.
+These settings also need to apply to clefs on new lines."
+
+}
+\layout { ragged-right = ##t  }
+
+
+\relative c' {
+  \override Staff.OctavateEight #'break-visibility = #all-invisible
+
+  \clef "treble_8"
+  c2 c |
+  c c | \break
+  c \clef "tenor" c |
+  \revert Staff.OctavateEight #'break-visibility
+  \clef "treble_8"
+  c2 c |
+  c c | \break
+  c c
+}
+
diff --git a/input/regression/cue-clef-begin-of-score.ly b/input/regression/cue-clef-begin-of-score.ly
new file mode 100644 (file)
index 0000000..9c3d695
--- /dev/null
@@ -0,0 +1,20 @@
+\version "2.13.45"
+
+\header {
+  texidoc = "Clefs for cue notes at the start of a score should print the
+standard clef plus a small cue clef after the time/key signature."
+}
+
+vI = \relative c'' { \clef "treble" \repeat unfold 40 g4 }
+\addQuote vIQuote { \vI }
+
+Solo = \relative c'' {
+  \clef "bass"
+  \cueDuringWithClef #"vIQuote" #DOWN #"treble" { r2 } d,,4 d4 |
+}
+
+\score {
+  <<
+    \new Staff \new Voice \Solo
+  >>
+}
diff --git a/input/regression/cue-clef-new-line.ly b/input/regression/cue-clef-new-line.ly
new file mode 100644 (file)
index 0000000..56f2e93
--- /dev/null
@@ -0,0 +1,30 @@
+\version "2.13.45"
+
+\header {
+  texidoc = "Clefs for cue notes and line breaks.  If the cue notes start in a
+new line, the cue clef should not be printed at the end of the previous line.
+Similarly, an end clef for cue notes ending at a line break should only be
+printed at the end of the line.
+
+Cue notes going over a line break should print the standard clef on the new
+line plus an additional cue clef after the time/key signature."
+}
+
+vI = \relative c'' { \clef "treble" \repeat unfold 40 g4 }
+\addQuote vIQuote { \vI }
+
+Solo = \relative c {
+  \clef "bass"
+  c1 | \break
+  \cueDuringWithClef #"vIQuote" #UP #"tenor" { R1 } | \break
+  c1 |
+  \cueDuringWithClef #"vIQuote" #UP #"tenor" { R1 | \break
+    R1 } |
+  c1
+}
+
+\score {
+  <<
+    \new Staff \new Voice \Solo
+  >>
+}
diff --git a/input/regression/cue-clef-octavation.ly b/input/regression/cue-clef-octavation.ly
new file mode 100644 (file)
index 0000000..cbe1010
--- /dev/null
@@ -0,0 +1,26 @@
+\version "2.13.45"
+
+\header {
+  texidoc = "Octavation for clefs for cue notes."
+}
+
+vI = \relative c'' { \clef "treble" \repeat unfold 40 g4 }
+\addQuote vIQuote { \vI }
+
+Solo = \relative c' {
+  \clef "treble_8" c1 |
+  \cueDuringWithClef #"vIQuote" #UP #"bass^8" { R1 } |
+  c1 | \break
+  c c
+  \clef "bass^8" c1 |
+  \cueDuringWithClef #"vIQuote" #UP #"treble_8" { R1 R1 } |
+  c
+  \cueDuringWithClef #"vIQuote" #UP #"treble_8" { R1 \break R } |
+  c
+}
+
+\score {
+  <<
+    \new Staff \new Voice \Solo
+  >>
+}
diff --git a/input/regression/cue-clef.ly b/input/regression/cue-clef.ly
new file mode 100644 (file)
index 0000000..c29759c
--- /dev/null
@@ -0,0 +1,25 @@
+\version "2.13.45"
+
+\header {
+  texidoc = "Clefs for cue notes: Print a cue clef at the begin of the cue
+notes and a cancelling clef after the cue notes."
+}
+
+vI = \relative c'' { \clef "treble" \repeat unfold 16 g4 }
+\addQuote vIQuote { \vI }
+
+Solo = \relative c {
+  \clef "bass"
+  c4 \cueDuringWithClef #"vIQuote" #DOWN #"treble" {
+    r4 r2 |
+    r4
+  } c4 c2 |
+  \cueDuringWithClef #"vIQuote" #DOWN "soprano" { R1*2 } |
+  c1
+}
+
+\score {
+  <<
+    \new Staff \new Voice \Solo
+  >>
+}
index 5ff06d5ae03c013af26cf875645e887888f00d2a..d52a2500a5670fe112d458b15d52c81657670aed 100644 (file)
@@ -1,6 +1,8 @@
-\version "2.13.10"
+\version "2.13.46"
 
-\header { texidoc = "A sample tablature with lettered tab,
+\header {
+  texidoc = "
+A sample tablature with lettered tab,
 using fretLabels to modify the fret letters.
 
 By default, letters are drawn sequentially from the alphabet,
@@ -27,13 +29,15 @@ notes = \relative c' {
 \score {
   \new TabStaff
   \with {
-    stringTunings = #'(17 14 9 5 2 -3)
+    stringTunings = #`(,(ly:make-pitch 1 3 0)
+                       ,(ly:make-pitch 1 1 0)
+                      ,(ly:make-pitch 0 5 0)
+                      ,(ly:make-pitch 0 3 0)
+                      ,(ly:make-pitch 0 1 0)
+                      ,(ly:make-pitch -1 5 0))
     tablatureFormat = #fret-letter-tablature-format
   }
   \new TabVoice {
     \notes
   }
 }
-
-
-
index d8f735e43594f1b716b9da0d77baee9ba1367aaa..893c3c2c1d5a43f5d990dcc093cdc8f1b16ea2d9 100644 (file)
@@ -1,3 +1,5 @@
+\version "2.13.46"
+
 \header {
 
   texidoc = "For other tunings, it is sufficient to set
@@ -6,12 +8,13 @@
 
 }
 
-\version "2.12.0"
-
 
 \new TabStaff {
-  \set TabStaff.stringTunings = #'(5  10 15 20)
+  \set TabStaff.stringTunings = #`(,(ly:make-pitch 0 3 0)
+                                  ,(ly:make-pitch 0 5 SHARP)
+                                  ,(ly:make-pitch 1 1 SHARP)
+                                  ,(ly:make-pitch 1 4 SHARP))
   \relative c''  { c4 d e f }
 }
 
+
index e258e669834022bb57a4ef801816937fe1717d23..d17ee6a19b5794ca5634fff0e66a6245a04b7fe9 100644 (file)
@@ -36,8 +36,6 @@ class Clef_engraver : public Engraver
 public:
   TRANSLATOR_DECLARATIONS (Clef_engraver);
 
-  Direction octave_dir_;
-
 protected:
   void stop_translation_timestep ();
   void process_music ();
@@ -67,7 +65,6 @@ Clef_engraver::derived_mark () const
 Clef_engraver::Clef_engraver ()
 {
   clef_ = 0;
-  octave_dir_ = CENTER;
   octavate_ = 0;
 
   /*
@@ -93,7 +90,7 @@ Clef_engraver::set_glyph ()
 void
 Clef_engraver::acknowledge_bar_line (Grob_info info)
 {
-  Item *item = dynamic_cast<Item *> (info.grob ());
+  Item *item = info.item ();
   if (item && scm_is_string (get_property ("clefGlyph")))
     create_clef ();
 }
@@ -189,11 +186,7 @@ Clef_engraver::stop_translation_timestep ()
        vis = get_property ("explicitClefVisibility");
 
       if (vis)
-       {
-         clef_->set_property ("break-visibility", vis);
-         if (octavate_)
-           octavate_->set_property ("break-visibility", vis);
-       }
+       clef_->set_property ("break-visibility", vis);
 
       clef_ = 0;
 
diff --git a/lily/cue-clef-engraver.cc b/lily/cue-clef-engraver.cc
new file mode 100644 (file)
index 0000000..5da4f16
--- /dev/null
@@ -0,0 +1,230 @@
+/*
+  This file is part of LilyPond, the GNU music typesetter.
+
+  Copyright (C) 1997--2010 Han-Wen Nienhuys <hanwen@xs4all.nl>
+                           Mats Bengtsson <matsb@s3.kth.se>
+  Copyright (C) 2010 Reinhold Kainhofer <reinhold@kainhofer.com>
+
+  LilyPond is free software: you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation, either version 3 of the License, or
+  (at your option) any later version.
+
+  LilyPond is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
+
+  You should have received a copy of the GNU General Public License
+  along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include <cctype>
+using namespace std;
+
+#include "item.hh"
+#include "context.hh"
+#include "bar-line.hh"
+#include "staff-symbol-referencer.hh"
+#include "engraver.hh"
+#include "direction.hh"
+#include "side-position-interface.hh"
+#include "warn.hh"
+#include "international.hh"
+
+#include "translator.icc"
+
+class Cue_clef_engraver : public Engraver
+{
+public:
+  TRANSLATOR_DECLARATIONS (Cue_clef_engraver);
+
+protected:
+  void stop_translation_timestep ();
+  void process_music ();
+  DECLARE_ACKNOWLEDGER (bar_line);
+
+  virtual void derived_mark () const;
+private:
+  Item *clef_;
+  Item *octavate_;
+
+  SCM prev_glyph_;
+  SCM prev_cpos_;
+  SCM prev_octavation_;
+  void create_clef ();
+  void create_end_clef ();
+  void set_glyph ();
+  void inspect_clef_properties ();
+  void create_octavate_eight (SCM oct);
+};
+
+void
+Cue_clef_engraver::derived_mark () const
+{
+  scm_gc_mark (prev_octavation_);
+  scm_gc_mark (prev_cpos_);
+  scm_gc_mark (prev_glyph_);
+}
+
+Cue_clef_engraver::Cue_clef_engraver ()
+{
+  clef_ = 0;
+  octavate_ = 0;
+
+  prev_octavation_ = prev_cpos_ = prev_glyph_ = SCM_EOL;
+}
+
+void
+Cue_clef_engraver::set_glyph ()
+{
+  SCM glyph_sym = ly_symbol2scm ("glyph");
+  SCM basic = ly_symbol2scm ("CueClef");
+  execute_pushpop_property (context (), basic, glyph_sym, SCM_UNDEFINED);
+  execute_pushpop_property (context (), basic, glyph_sym, get_property ("cueClefGlyph"));
+
+  basic = ly_symbol2scm ("CueEndClef");
+  execute_pushpop_property (context (), basic, glyph_sym, SCM_UNDEFINED);
+  execute_pushpop_property (context (), basic, glyph_sym, get_property ("clefGlyph"));
+}
+
+/**
+   Generate a clef at the start of a measure. (when you see a Bar,
+   ie. a breakpoint)
+*/
+void
+Cue_clef_engraver::acknowledge_bar_line (Grob_info info)
+{
+  Item *item = info.item ();
+  if (item && scm_is_string (get_property ("cueClefGlyph")))
+    create_clef ();
+}
+
+void
+Cue_clef_engraver::create_octavate_eight (SCM oct)
+{
+  if (scm_is_number (oct) && scm_to_int (oct))
+    {
+      Item *g = make_item ("OctavateEight", SCM_EOL);
+
+      int abs_oct = scm_to_int (oct);
+      int dir = sign (abs_oct);
+      abs_oct = abs (abs_oct) + 1;
+
+      SCM txt = scm_number_to_string (scm_from_int (abs_oct),
+                                     scm_from_int (10));
+
+      g->set_property ("text",
+                      scm_list_n (ly_lily_module_constant ("vcenter-markup"),
+                                  txt, SCM_UNDEFINED));
+      Side_position_interface::add_support (g, clef_);
+
+      g->set_parent (clef_, Y_AXIS);
+      g->set_parent (clef_, X_AXIS);
+      g->set_property ("direction", scm_from_int (dir));
+      octavate_ = g;
+    }
+}
+
+void
+Cue_clef_engraver::create_clef ()
+{
+  if (!clef_)
+    {
+      Item *c = make_item ("CueClef", SCM_EOL);
+
+      clef_ = c;
+      SCM cpos = get_property ("cueClefPosition");
+      if (scm_is_number (cpos))
+       clef_->set_property ("staff-position", cpos);
+
+      create_octavate_eight (get_property ("cueClefOctavation"));
+    }
+}
+
+void
+Cue_clef_engraver::create_end_clef ()
+{
+  if (!clef_)
+    {
+      clef_ = make_item ("CueEndClef", SCM_EOL);
+      SCM cpos = get_property ("clefPosition");
+      if (scm_is_number (cpos))
+       clef_->set_property ("staff-position", cpos);
+
+      create_octavate_eight (get_property ("clefOctavation"));
+    }
+}
+
+void
+Cue_clef_engraver::process_music ()
+{
+  inspect_clef_properties ();
+}
+
+void
+Cue_clef_engraver::inspect_clef_properties ()
+{
+  SCM glyph = get_property ("cueClefGlyph");
+  SCM clefpos = get_property ("cueClefPosition");
+  SCM octavation = get_property ("cueClefOctavation");
+
+  if (scm_equal_p (glyph, prev_glyph_) == SCM_BOOL_F
+      || scm_equal_p (clefpos, prev_cpos_) == SCM_BOOL_F
+      || scm_equal_p (octavation, prev_octavation_) == SCM_BOOL_F)
+    {
+      set_glyph ();
+      if (scm_is_string (glyph))
+       {
+         create_clef ();
+         if (clef_)
+           clef_->set_property ("non-default", SCM_BOOL_T);
+       }
+      else
+        create_end_clef ();
+
+      prev_cpos_ = clefpos;
+      prev_glyph_ = glyph;
+      prev_octavation_ = octavation;
+    }
+
+}
+
+void
+Cue_clef_engraver::stop_translation_timestep ()
+{
+  if (clef_)
+    {
+      SCM vis = 0;
+      if (to_boolean (clef_->get_property ("non-default")))
+       vis = get_property ("explicitCueClefVisibility");
+
+      if (vis)
+       clef_->set_property ("break-visibility", vis);
+
+      clef_ = 0;
+      octavate_ = 0;
+    }
+}
+
+ADD_ACKNOWLEDGER (Cue_clef_engraver, bar_line);
+ADD_TRANSLATOR (Cue_clef_engraver,
+               /* doc */
+               "Determine and set reference point for pitches in cued voices.",
+
+               /* create */
+               "CueClef "
+               "CueEndClef "
+               "OctavateEight ",
+
+               /* read */
+               "cueClefGlyph "
+               "cueClefOctavation "
+               "cueClefPosition "
+               "explicitCueClefVisibility "
+               "middleCCuePosition "
+               "clefOctavation ",
+
+               /* write */
+               ""
+               );
index 45ec467dc23f6daed3aca01416012f1137217708..9f226ebafdcba931b3804bfaa9185e1396650f0b 100644 (file)
@@ -52,15 +52,16 @@ struct System_spec
 struct Break_position
 {
   /*
-    index in system_spec_index_, if VPOS start of book. 
+    index into system_specs_, if this is VPOS, the Break_position represents the
+    start of the book. 
    */
   vsize system_spec_index_;
 
-  /* if system_spec_index_ is a score, then we start at the score_brk_'th possible
-     page-break in the score */
+  /* if system_spec_index_ indexes a score, then we start at the score_brk_'th
+     possible page-break in the score */
   vsize score_break_; 
 
-  /* if system_spec_index_ is a score, this points to the broken column */
+  /* if system_spec_index_ indexes a score, this points to the broken column */
   Grob *col_;  
   bool score_ender_;
 
index 65663798b3ae2b3de61bb04c143f85853da39bc7..bf10cfa14341b808a1100e785041c43f85ff1925 100644 (file)
@@ -72,12 +72,32 @@ Optimal_page_breaking::solve ()
     }
   else
     {
+      /* If systems-per-page and page-count are both specified, we know exactly
+        how many systems should be present. */
+      if (systems_per_page () > 0)
+       {
+         ideal_sys_count = systems_per_page () * page_count;
+
+         if (ideal_sys_count > max_system_count (0, end)
+             || ideal_sys_count < min_system_count (0, end))
+           {
+             warning (_ ("could not satisfy systems-per-page and page-count at the same time, ignoring systems-per-page"));
+             ideal_sys_count = best.system_count ();
+             min_sys_count = page_count;
+           }
+         else
+           {
+             set_current_breakpoints (0, end, ideal_sys_count);
+             min_sys_count = max_sys_count = ideal_sys_count;
+             ideal_line_division = best_division = current_configuration (0);
+           }
+       }
+      else
+       min_sys_count = page_count;
+
       /* TODO: the following line will spit out programming errors if the
         ideal line spacing doesn't fit on PAGE_COUNT pages */
-      /* TODO: the interaction between systems_per_page and page_count needs to
-        be considered. */
       best = space_systems_on_n_pages (0, page_count, first_page_num);
-      min_sys_count = page_count;
     }
 
   if (page_count == 1)
@@ -89,7 +109,7 @@ Optimal_page_breaking::solve ()
 
   /* try a smaller number of systems than the ideal number for line breaking */
   Line_division bound = ideal_line_division;
-  for (vsize sys_count = ideal_sys_count; --sys_count >= min_sys_count;)
+  for (vsize sys_count = ideal_sys_count + 1; --sys_count >= min_sys_count;)
     {
       Page_spacing_result best_for_this_sys_count;
       set_current_breakpoints (0, end, sys_count, Line_division (), bound);
index 993bfa459256c51c10fa57cb03678a018b103983..e6a5740b2e10554ab89c06bf2374b53d603ce923 100644 (file)
@@ -529,6 +529,11 @@ Page_breaking::make_pages (vector<vsize> lines_per_page, SCM systems)
       ret = scm_cons (page, ret);
       --page_num;
     }
+
+  // By reversing the table, we ensure that duplicated labels (eg. those
+  // straddling a page turn) will appear in the table with their last
+  // occurence first.
+  label_page_table = scm_reverse_x (label_page_table, SCM_EOL);
   book_->top_paper ()->set_variable (ly_symbol2scm ("label-page-table"), label_page_table);
   return ret;
 }
@@ -671,6 +676,7 @@ Page_breaking::chunk_list (vsize start_index, vsize end_index)
   return ret;
 }
 
+// Returns the minimum number of _non-title_ lines.
 vsize
 Page_breaking::min_system_count (vsize start, vsize end)
 {
@@ -683,6 +689,7 @@ Page_breaking::min_system_count (vsize start, vsize end)
   return ret;
 }
 
+// Returns the maximum number of _non-title_ lines.
 vsize
 Page_breaking::max_system_count (vsize start, vsize end)
 {
@@ -695,6 +702,9 @@ Page_breaking::max_system_count (vsize start, vsize end)
   return ret;
 }
 
+// The numbers returned by this function represent either
+// the maximum or minimum number of _non-title_ lines
+// per chunk.
 Page_breaking::Line_division
 Page_breaking::system_count_bounds (vector<Break_position> const &chunks,
                                    bool min)
@@ -702,7 +712,7 @@ Page_breaking::system_count_bounds (vector<Break_position> const &chunks,
   assert (chunks.size () >= 2);
 
   Line_division ret;
-  ret.resize (chunks.size () - 1, 1);
+  ret.resize (chunks.size () - 1, 0);
 
   for (vsize i = 0; i + 1 < chunks.size (); i++)
     {
@@ -802,7 +812,7 @@ Page_breaking::set_to_ideal_line_configuration (vsize start, vsize end)
          div.push_back (line_breaking_[sys].best_solution (start, end).size ());
        }
       else
-       div.push_back (1);
+       div.push_back (0);
 
       system_count_ += div.back ();
     }
@@ -839,7 +849,7 @@ Page_breaking::cache_line_details (vsize configuration_index)
            }
          else
            {
-             assert (div[i] == 1);
+             assert (div[i] == 0);
              uncompressed_line_details_.push_back (system_specs_[sys].prob_
                                                    ? Line_details (system_specs_[sys].prob_, book_->paper_)
                                                    : Line_details ());
@@ -877,7 +887,7 @@ Page_breaking::line_divisions_rec (vsize system_count,
   int real_min = max ((int) min_sys[my_index], (int) system_count - others_max);
   int real_max = min ((int) max_sys[my_index], (int) system_count - others_min);
 
-  if (real_min > real_max || real_min <= 0)
+  if (real_min > real_max || real_min < 0)
     {
       /* this should never happen within a recursive call. If it happens
         at all, it means that we were called with an unsolvable problem
index be499050c128f1b8435d768f90b8defaca6b8cb2..58e31a3b93414f86c16091fd2cc5264623167b4c 100644 (file)
@@ -168,6 +168,10 @@ LY_DEFINE (ly_set_middle_C_x, "ly:set-middle-C!",
   Context *c = unsmob_context (context);
   int clef_pos = robust_scm2int (c->get_property ("middleCClefPosition"), 0);
   int offset = robust_scm2int (c->get_property ("middleCOffset"), 0);
+  /* middleCCuePosition overrides the clef! */
+  SCM cue_pos = c->get_property ("middleCCuePosition");
+  if (scm_is_number (cue_pos))
+    clef_pos = robust_scm2int (cue_pos, 0);
 
   c->set_property (ly_symbol2scm ("middleCPosition"), scm_from_int (clef_pos + offset));
   return SCM_UNDEFINED;
index 0b53e9ad292860242073999b79afba585090ebdc..6812592060935070cd6635005e46b8449d174e2a 100644 (file)
@@ -67,11 +67,9 @@ showKeySignature = {
 % Some common timing tweaks.
 
 % Sets the autobeamer to span quarter notes only. Use for fast music.
-% TODO: Needs more tweaking
 quarterBeaming = {
   \set Staff.beamExceptions = #'()
 }
-
 halfBeaming = {
   \set Staff.beamExceptions = #'((end . (((1 . 8) . (4 4))
                                          ((1 . 12) . (3 3)))))
@@ -82,190 +80,231 @@ reelTime = {
   \time 2/2
   \halfBeaming
 }
-
 % 4/4 marches are written with numerical time signature and with quarter beaming.
 marchTime = {
   \time 4/4
-  \override Staff.TimeSignature #'style = #'()
+  \numericTimeSignature
   \quarterBeaming
 }
 
+% Add appropriate tweaks needed for piping grace notes to look great.
+stemspace = #(define-music-function (parser location extent) (pair?) #{
+  \once \override Staff.Stem #'X-extent = #$extent
+#})
+pgrace = #(define-music-function (parser location notes) (ly:music?) #{
+  \override Score.GraceSpacing #'spacing-increment = #0
+  \override Score.Stem #'beamlet-max-length-proportion = #'(0.5 . 0.5)
+  \grace $notes
+  \revert Score.Stem #'beamlet-default-length
+#})
+
 % Single grace notes
-grG = { \grace { \small G32 } }
-gra = { \grace { \small a32 } }
-grb = { \grace { \small b32 } }
-grc = { \grace { \small c32 } }
-grd = { \grace { \small d32 } }
-gre = { \grace { \small e32 } }
-grf = { \grace { \small f32 } }
-grg = { \grace { \small g32 } }
-grA = { \grace { \small A32 } }
+grG = { \pgrace { \small G32 } }
+gra = { \pgrace { \small a32 } }
+grb = { \pgrace { \small b32 } }
+grc = { \pgrace { \small c32 } }
+grd = { \pgrace { \small d32 } }
+gre = { \pgrace { \small e32 } }
+grf = { \pgrace { \small f32 } }
+grg = { \pgrace { \small g32 } }
+grA = { \pgrace { \small A32 } }
 
 % Doublings
-dblG = { \grace { \small g32[ G d] } }
-dbla = { \grace { \small g32[ a d] } }
-dblb = { \grace { \small g32[ b d] } }
-dblc = { \grace { \small g32[ c d] } }
-dbld = { \grace { \small g32[ d e] } }
-dble = { \grace { \small g32[ e f] } }
-dblf = { \grace { \small g32[ f g] } }
+dblG = { \pgrace { \small g32[ G d] } }
+dbla = { \pgrace { \small g32[ a d] } }
+dblb = { \pgrace { \small g32[ b d] } }
+dblc = { \pgrace { \small g32[ c d] } }
+dbld = { \pgrace { \small g32[ d e] } }
+dble = { \pgrace { \small g32[ e f] } }
+dblf = { \pgrace { \small g32[ f g] } }
 % These are the same as the half doublings.
-dblg = { \grace { \small g32[ f] } }
-dblA = { \grace { \small A32[ g] } }
+dblg = { \pgrace { \small g32[ f] } }
+dblA = { \pgrace { \small A32[ g] } }
 
 % Half doublings
-hdblG = { \grace { \small G32[ d] } }
-hdbla = { \grace { \small a32[ d] } }
-hdblb = { \grace { \small b32[ d] } }
-hdblc = { \grace { \small c32[ d] } }
-hdbld = { \grace { \small d32[ e] } }
-hdble = { \grace { \small e32[ f] } }
-hdblf = { \grace { \small f32[ g] } }
-hdblg = { \grace { \small g32[ f] } }
-hdblA = { \grace { \small A32[ g] } }
+hdblG = { \pgrace { \small G32[ d] } }
+hdbla = { \pgrace { \small a32[ d] } }
+hdblb = { \pgrace { \small b32[ d] } }
+hdblc = { \pgrace { \small c32[ d] } }
+hdbld = { \pgrace { \small d32[ e] } }
+hdble = { \pgrace { \small e32[ f] } }
+hdblf = { \pgrace { \small f32[ g] } }
+hdblg = { \pgrace { \small g32[ f] } }
+hdblA = { \pgrace { \small A32[ g] } }
 
 % Thumb doublings
-tdblG = { \grace { \small A32[ G d] } }
-tdbla = { \grace { \small A32[ a d] } }
-tdblb = { \grace { \small A32[ b d] } }
-tdblc = { \grace { \small A32[ c d] } }
-tdbld = { \grace { \small A32[ d e] } }
-tdble = { \grace { \small A32[ e f] } }
-tdblf = { \grace { \small A32[ f g] } }
-tdblg = { \grace { \small A32[ g f] } }
+tdblG = { \pgrace { \small A32[ G d] } }
+tdbla = { \pgrace { \small A32[ a d] } }
+tdblb = { \pgrace { \small A32[ b d] } }
+tdblc = { \pgrace { \small A32[ c d] } }
+tdbld = { \pgrace { \small A32[ d e] } }
+tdble = { \pgrace { \small A32[ e f] } }
+tdblf = { \pgrace { \small A32[ f g] } }
+tdblg = { \pgrace { \small A32[ g f] } }
 
 % Shakes
 % A few of these can't really be played and are here only for consistency.
-shakea = { \grace { \small g32[ a d a G] } }
-shakeb = { \grace { \small g32[ b d b G] } }
-shakec = { \grace { \small g32[ c d c G] } }
-shaked = { \grace { \small g32[ d e d G] } }
-shakee = { \grace { \small g32[ e f e a] } }
-shakef = { \grace { \small g32[ f g f a] } }
-shakeg = { \grace { \small A32[ f g a] } }
-shakeA = { \grace { \small A32[ g A a] } }
+shakea = { \pgrace { \small g32[ a e a G] } }
+shakeb = { \pgrace { \small g32[ b e b G] } }
+shakec = { \pgrace { \small g32[ c e c G] } }
+shaked = { \pgrace { \small g32[ d e d G] } }
+shakee = { \pgrace { \small g32[ e f e a] } }
+shakef = { \pgrace { \small g32[ f g f a] } }
+shakeg = { \pgrace { \small A32[ f g a] } }
+shakeA = { \pgrace { \small A32[ g A a] } }
 
 % Half shakes
-hshakea = { \grace { \small a32[ d a G] } }
-hshakeb = { \grace { \small b32[ d b G] } }
-hshakec = { \grace { \small c32[ d c G] } }
-hshaked = { \grace { \small d32[ e d G] } }
-hshakee = { \grace { \small e32[ f e a] } }
-hshakef = { \grace { \small f32[ g f a] } }
-hshakeg = { \grace { \small g32[ f g a] } }
-hshakeA = { \grace { \small A32[ g A a] } }
+hshakea = { \pgrace { \small a32[ d a G] } }
+hshakeb = { \pgrace { \small b32[ d b G] } }
+hshakec = { \pgrace { \small c32[ d c G] } }
+hshaked = { \pgrace { \small d32[ e d G] } }
+hshakee = { \pgrace { \small e32[ f e a] } }
+hshakef = { \pgrace { \small f32[ g f a] } }
+hshakeg = { \pgrace { \small g32[ f g a] } }
+hshakeA = { \pgrace { \small A32[ g A a] } }
 
 % Thumb shakes
-tshakea = { \grace { \small A32[ a d a G] } }
-tshakeb = { \grace { \small A32[ b d b G] } }
-tshakec = { \grace { \small A32[ c d c G] } }
-tshaked = { \grace { \small A32[ d e d G] } }
-tshakee = { \grace { \small A32[ e f e a] } }
-tshakef = { \grace { \small A32[ f g f a] } }
-tshakeg = { \grace { \small A32[ f g a] } }
-tshakeA = { \grace { \small A32[ g A a] } }
+tshakea = { \pgrace { \small A32[ a d a G] } }
+tshakeb = { \pgrace { \small A32[ b d b G] } }
+tshakec = { \pgrace { \small A32[ c d c G] } }
+tshaked = { \pgrace { \small A32[ d e d G] } }
+tshakee = { \pgrace { \small A32[ e f e a] } }
+tshakef = { \pgrace { \small A32[ f g f a] } }
+tshakeg = { \pgrace { \small A32[ f g a] } }
+tshakeA = { \pgrace { \small A32[ g A a] } }
 
 % Slurs
 % A few of these can't really be played and are here only for consistency.
-slura = { \grace { \small g32[ a G] } }
-slurb = { \grace { \small g32[ b G] } }
-slurc = { \grace { \small g32[ c G] } }
-slurd = { \grace { \small g32[ d G] } }
-slure = { \grace { \small g32[ e a] } }
-slurf = { \grace { \small g32[ f a] } }
-slurg = { \grace { \small A32[ f a] } }
-slurA = { \grace { \small f32[ a] } }
+slura  = { \pgrace { \small g32[ a G] } }
+slurb  = { \pgrace { \small g32[ b G] } }
+slurc  = { \pgrace { \small g32[ c G] } }
+slurd  = { \pgrace { \small g32[ d G] } }
+wslurd = { \pgrace { \small g32[ d c] } }
+slure  = { \pgrace { \small g32[ e a] } }
+slurf  = { \pgrace { \small g32[ f a] } }
+slurg  = { \pgrace { \small A32[ f a] } }
+slurA  = { \pgrace { \small f32[ a] } }
 
 % Half slurs
-hslura = { \grace { \small a32[ G] } }
-hslurb = { \grace { \small b32[ G] } }
-hslurc = { \grace { \small c32[ G] } }
-hslurd = { \grace { \small d32[ G] } }
-hslure = { \grace { \small e32[ a] } }
-hslurf = { \grace { \small f32[ a] } }
-hslurg = { \grace { \small g32[ a] } }
-hslurA = { \grace { \small A32[ a] } }
+hslura  = { \pgrace { \small a32[ G] } }
+hslurb  = { \pgrace { \small b32[ G] } }
+hslurc  = { \pgrace { \small c32[ G] } }
+hslurd  = { \pgrace { \small d32[ G] } }
+whslurd = { \pgrace { \small d32[ c] } }
+hslure  = { \pgrace { \small e32[ a] } }
+hslurf  = { \pgrace { \small f32[ a] } }
+hslurg  = { \pgrace { \small g32[ a] } }
+hslurA  = { \pgrace { \small A32[ a] } }
 
 % Thumb slurs
-tslura = { \grace { \small A32[ a G] } }
-tslurb = { \grace { \small A32[ b G] } }
-tslurc = { \grace { \small A32[ c G] } }
-tslurd = { \grace { \small A32[ d a] } }
-tslure = { \grace { \small A32[ e a] } }
-tslurf = { \grace { \small A32[ f a] } }
-tslurg = { \grace { \small A32[ f a] } }
-tslurA = { \grace { \small f32[ a] } }
+tslura  = { \pgrace { \small A32[ a G] } }
+tslurb  = { \pgrace { \small A32[ b G] } }
+tslurc  = { \pgrace { \small A32[ c G] } }
+tslurd  = { \pgrace { \small A32[ d G] } }
+wtslurd = { \pgrace { \small A32[ d c] } }
+tslure  = { \pgrace { \small A32[ e a] } }
+tslurf  = { \pgrace { \small A32[ f a] } }
+tslurg  = { \pgrace { \small A32[ f a] } }
+tslurA  = { \pgrace { \small f32[ a] } }
 
 % Catches
-catcha = { \grace { \small a32[ G d G] } }
-catchb = { \grace { \small b32[ G d G] } }
-catchc = { \grace { \small c32[ G d G] } }
-catchd = { \grace { \small d32[ G b G] } }
-catche = { \grace { \small e32[ G d G] } }
+catcha = { \pgrace { \small a32[ G d G] } }
+catchb = { \pgrace { \small b32[ G d G] } }
+catchc = { \pgrace { \small c32[ G d G] } }
+catchd = { \pgrace { \small d32[ G b G] } }
+catche = { \pgrace { \small e32[ G d G] } }
 
 % G-grace catches
-gcatcha = { \grace { \small g32[ a G d G] } }
-gcatchb = { \grace { \small g32[ b G d G] } }
-gcatchc = { \grace { \small g32[ c G d G] } }
-gcatchd = { \grace { \small g32[ d G b G] } }
-gcatche = { \grace { \small g32[ e G d G] } }
+gcatcha = { \pgrace { \small g32[ a G d G] } }
+gcatchb = { \pgrace { \small g32[ b G d G] } }
+gcatchc = { \pgrace { \small g32[ c G d G] } }
+gcatchd = { \pgrace { \small g32[ d G b G] } }
+gcatche = { \pgrace { \small g32[ e G d G] } }
 
 % Thumb catches
-tcatcha = { \grace { \small A32[ a G d G] } }
-tcatchb = { \grace { \small A32[ b G d G] } }
-tcatchc = { \grace { \small A32[ c G d G] } }
-tcatchd = { \grace { \small A32[ d G b G] } }
-tcatche = { \grace { \small A32[ e G d G] } }
+tcatcha = { \pgrace { \small A32[ a G d G] } }
+tcatchb = { \pgrace { \small A32[ b G d G] } }
+tcatchc = { \pgrace { \small A32[ c G d G] } }
+tcatchd = { \pgrace { \small A32[ d G b G] } }
+tcatche = { \pgrace { \small A32[ e G d G] } }
+
+% Triple strikes (BMW has them all, but I've never seen any but the A one used, so ...)
+tripleA = { \pgrace { \small A32[ g A g A g] } }
 
 % Throws
-thrwd     = { \grace { \small G32[ d c] } }
-Gthrwd    = { \grace { \small d32[ c] } }
-gripthrwd = { \grace { \small G32[ d G c] } }
-thrwf     = { \grace { \small f32[ e g e] } }
+thrwd     = { \pgrace { \small G32[ d c] } }
+Gthrwd    = { \pgrace { \small d32[ c] } }
+gripthrwd = { \pgrace { \small G32[ d G c] } }
+thrwe     = { \pgrace { \small e32[ a f a] } }
+wthrwe    = { \pgrace { \small e32[ d f d] } }
+thrwf     = { \pgrace { \small f32[ e g e] } }
 
 % Birls
-birl  = { \grace { \small a32[ G a G] } }
-wbirl = { \grace { \small G32[ a G] } }
-gbirl = { \grace { \small g32[ a G a G] } }
-dbirl = { \grace { \small d32[ a G a G] } }
+birl  = { \pgrace { \small a32[ G a G] } }
+wbirl = { \pgrace { \small G32[ a G] } }
+gbirl = { \pgrace { \small g32[ a G a G] } }
+dbirl = { \pgrace { \small d32[ a G a G] } }
 
 % Grips
-grip  = { \grace { \small G32[ d G] } }
-dgrip = { \grace { \small G32[ b G] } }
-egrip = { \grace { \small G32[ e G] } }
+grip  = { \pgrace { \small G32[ d G] } }
+dgrip = { \pgrace { \small G32[ b G] } }
+egrip = { \pgrace { \small G32[ e G] } }
 
 % Taorluaths
-taor    = { \grace { \small G32[ d G e] } }
-dtaor   = { \grace { \small G32[ b G e] } }
-Gtaor   = { \grace { \small d32[ G e] } }
-taoramb = { \grace { \small G32[ d G b e] } }
-taoramc = { \grace { \small G32[ d G c e] } }
-taoramd = { \grace { \small G32[ d G c d e] } }
+taor    = { \pgrace { \small G32[ d G e] } }
+taorjmd = { \pgrace { \small G32[ d a e] } }
+taorold = { \pgrace { \small G32[ d G a e] } }
+dtaor   = { \pgrace { \small G32[ b G e] } }
+Gtaor   = { \pgrace { \small d32[ G e] } }
+taoramb = { \pgrace { \small G32[ d G b e] } }
+taoramc = { \pgrace { \small G32[ d G c e] } }
+taoramd = { \pgrace { \small G32[ d G c d e] } }
 
 % Crunluaths
-crun    = { \grace { \small G32[ d G e a f a ] } }
-dcrun   = { \grace { \small G32[ b G e a f a ] } }
-Gcrun   = { \grace { \small d32[ G e G f a ] } }
-crunamb = { \grace { \small G32[ d G b e b f b ] } }
-crunamc = { \grace { \small G32[ d G c e c f c ] } }
-crunamd = { \grace { \small G32[ d G c d e d f d ] } }
+crun    = { \pgrace { \small G32[ d G e a f a ] } }
+dcrun   = { \pgrace { \small G32[ b G e a f a ] } }
+Gcrun   = { \pgrace { \small d32[ G e G f a ] } }
+crunamb = { \pgrace { \small G32[ d G b e b f b ] } }
+crunamc = { \pgrace { \small G32[ d G c e c f c ] } }
+crunamd = { \pgrace { \small G32[ d G c d e d f d ] } }
+crunambfosg = { \pgrace { \small e32[ b f b ] } }
+crunamcfosg = { \pgrace { \small e32[ c f c ] } }
+crunamdfosg = { \pgrace { \small e32[ d f d ] } }
 
 % Special piobaireachd notations
-grGcad  = { \grace { \small G16 } }
-gracad  = { \grace { \small a16 } }
-cad     = { \grace { \small g32[ e8 d32] } }
-hcad    = { \grace { \small g32[ e8] } }
-dre     = { \grace { \small e32[ a f a] } }
+grGcad   = { \pgrace { \small G16 } }
+gracad   = { \pgrace { \small a16 } }
+cad      = { \pgrace { \small \stemspace #'(0 . 0.5) g32[ e8 d32] } }
+hcad     = { \pgrace { \small \stemspace #'(0 . 0.5) g32[ e8] } }
+tcad     = { \pgrace { \small e8[ d32] } }
+thcad    = { \pgrace { \small e8 } }
+% This is the same as thrwe
+dre      = { \pgrace { \small e32[ a f a] } }
 % This is the same as thrwf
-dare    = { \grace { \small f32[ e g e] } }
-bari    = { \grace { \small e32[ G f G] } }
-dari    = { \grace { \small f32[ e g e f e] } }
-pthrwd  = { \grace { \small G16[ d32 c] } }
-darodo  = { \grace { \small G32[ d G c G] } }
-Gdarodo = { \grace { \small d32[ G c G] } }
+dare     = { \pgrace { \small f32[ e g e] } }
+bari     = { \pgrace { \small e32[ G f G] } }
+dari     = { \pgrace { \small f32[ e g e f e] } }
+pthrwd   = { \pgrace { \small G16[ d32 c] } }
+darodo   = { \pgrace { \small G32[ d G c G] } }
+Gdarodo  = { \pgrace { \small d32[ G c G] } }
+pdarodo  = { \pgrace { \small G16[ d32 G c G16] } }
+pGdarodo = { \pgrace { \small d32[ G c G16] } }
+% Weird stuff from Joseph MacDonald’s book
+fifteenthcutting     = { \pgrace { \small G32[ d a e a f a e a d] } }
+fifteenthcuttingG    = { \pgrace { \small G32[ d a e G f G e G d] } }
+Gfifteenthcutting    = { \pgrace { \small d32[ a e a f a e a d] } }
+GfifteenthcuttingG   = { \pgrace { \small d32[ a e G f G e G d] } }
+seventeenthcutting   = { \pgrace { \small G32[ d a e a f a e a d a c] } }
+seventeenthcuttingG  = { \pgrace { \small G32[ d a e G f G e G d G c] } }
+Gseventeenthcutting  = { \pgrace { \small d32[ a e a f a e a d a c] } }
+GseventeenthcuttingG = { \pgrace { \small d32[ a e G f G e G d G c] } }
+barluadh   = { \pgrace { \small G32[ d a e a f a e a d a c a b a e a f a] } }
+barluadhG  = { \pgrace { \small G32[ d a e G f G e G d G c G b G e G f G] } }
+Gbarluadh  = { \pgrace { \small d32[ a e a f a e a d a c a b a e a f a] } }
+GbarluadhG = { \pgrace { \small d32[ a e G f G e G d G c G b G e G f G] } }
 % Non-gracenote piobaireachd markup.
 trebling = \markup {
-  \override #'(baseline-skip . 0.3)
+  \override #'(baseline-skip . 0.4)
   \column {
     \musicglyph #"scripts.tenuto"
     \musicglyph #"scripts.tenuto"
@@ -274,11 +313,22 @@ trebling = \markup {
 }
 % Abbreviated notation common in piobaireachd scores.
 % TODO: Make sure these are put on a fixed Y-position.
-txtaor = \markup { "T" }
-txcrun = \markup { "C" }
-txtaorcrun = \markup { \column { "T" "C" } }
-% TODO: These characters should be shown upside down.
-% Use a postscript markup command for this.
-txtaoram = \markup { "T" }
-txcrunam = \markup { "C" }
-txtaorcrunam = \markup { \column { "T" "C" } }
+txtaor = \markup { \center-align "T" }
+txcrun = \markup { \center-align "C" }
+txtaorcrun = \markup {
+  \override #'(baseline-skip . 1.8)
+  \column {
+    \center-align "T"
+    \center-align "C"
+  }
+}
+% Turn these upside down, as in the Kilberry book.
+txtaoram = \markup { \center-align \scale #'(-1 . -1) "T" }
+txcrunam = \markup { \center-align \scale #'(-1 . -1) "C" }
+txtaorcrunam = \markup {
+  \override #'(baseline-skip . 1.8)
+  \column {
+    \center-align \scale #'(-1 . -1) "T"
+    \center-align \scale #'(-1 . -1) "C"
+  }
+}
index 08ff4d21a39f923ec02ef0a6a2845a23c57f68b2..39aeabdb61d8f4bf9c90e5a629443f9dcfd58c04 100644 (file)
@@ -94,6 +94,31 @@ melismaEnd = #(context-spec-music (make-property-unset 'melismaBusy) 'Bottom)
 laissezVibrer = #(make-music 'LaissezVibrerEvent)
 repeatTie = #(make-music 'RepeatTieEvent)
 
+\include "dynamic-scripts-init.ly"
+\include "spanners-init.ly"
+
+%% MAKE-HASH-TABLE in GUILE 1.6 takes mandatory size parameter.
+#(define musicQuotes (make-hash-table 29))
+
+#(define toplevel-book-handler print-book-with-defaults)
+#(define toplevel-bookpart-handler collect-bookpart-for-book)
+#(define toplevel-music-handler collect-music-for-book)
+#(define toplevel-score-handler collect-scores-for-book)
+#(define toplevel-text-handler collect-scores-for-book)
+
+#(define book-bookpart-handler ly:book-add-bookpart!)
+#(define book-music-handler collect-book-music-for-book)
+#(define book-score-handler ly:book-add-score!)
+#(define book-text-handler ly:book-add-score!)
+
+#(define bookpart-score-handler ly:book-add-score!)
+#(define bookpart-text-handler ly:book-add-score!)
+#(define bookpart-music-handler collect-book-music-for-book)
+
+\include "predefined-fretboards-init.ly"
+\include "string-tunings-init.ly"
+\include "property-init.ly"
+
 \include "grace-init.ly"
 \include "midi-init.ly"
 \include "paper-defaults-init.ly"
@@ -112,7 +137,6 @@ repeatTie = #(make-music 'RepeatTieEvent)
 }
 
 #(set-default-paper-size (ly:get-option 'paper-size))
-
 partCombineListener = \layout {
     \context {
        \Score
@@ -122,28 +146,7 @@ partCombineListener = \layout {
     }
 }
 
-\include "dynamic-scripts-init.ly"
-\include "spanners-init.ly"
-\include "property-init.ly"
-
 setDefaultDurationToQuarter = { c4 }
 
-%% MAKE-HASH-TABLE in GUILE 1.6 takes mandatory size parameter.
-#(define musicQuotes (make-hash-table 29))
 
-#(define toplevel-book-handler print-book-with-defaults)
-#(define toplevel-bookpart-handler collect-bookpart-for-book)
-#(define toplevel-music-handler collect-music-for-book)
-#(define toplevel-score-handler collect-scores-for-book)
-#(define toplevel-text-handler collect-scores-for-book)
-
-#(define book-bookpart-handler ly:book-add-bookpart!)
-#(define book-music-handler collect-book-music-for-book)
-#(define book-score-handler ly:book-add-score!)
-#(define book-text-handler ly:book-add-score!)
 
-#(define bookpart-score-handler ly:book-add-score!)
-#(define bookpart-text-handler ly:book-add-score!)
-#(define bookpart-music-handler collect-book-music-for-book)
-
-\include "predefined-fretboards-init.ly"
index d102d7c5d4e3e489e69f913d2966b26c36b0f3f0..f5c4eab9b2708ccf239174e32179ea14f31f4ab1 100644 (file)
@@ -75,6 +75,7 @@
   \consists "Figured_bass_engraver"
   \consists "Figured_bass_position_engraver"
   \consists "Script_row_engraver"
+  \consists "Cue_clef_engraver"
 
   localKeySignature = #'()
   createSpacing = ##t
@@ -553,6 +554,7 @@ automatically when an output definition (a @code{\score} or
   automaticBars = ##t
 
   explicitClefVisibility = #all-visible
+  explicitCueClefVisibility = #end-of-line-invisible
   explicitKeySignatureVisibility = #all-visible
   implicitTimeSignatureVisibility = #end-of-line-invisible
 
index 9d66ee72ed03a5a1568d9ae6ee30b766422645ce..b591344ed588ba5ee93fcebd0f471a71adf72273 100644 (file)
@@ -214,6 +214,15 @@ clef =
    (_i "Set the current clef to @var{type}.")
    (make-clef-set type))
 
+cueClef =
+#(define-music-function (parser location type) (string?)
+  (_i "Set the current cue clef to @var{type}.")
+  (make-cue-clef-set type))
+cueClefUnset =
+#(define-music-function (parser location) ()
+  (_i "Unset the current cue clef.")
+  (make-cue-clef-unset))
+
 cueDuring =
 #(define-music-function
    (parser location what dir main-music) (string? ly:dir? ly:music?)
@@ -224,8 +233,20 @@ in a CueVoice oriented by @var{dir}.")
               'quoted-context-type 'Voice
               'quoted-context-id "cue"
               'quoted-music-name what
-              'quoted-voice-direction dir
-              'origin location))
+              'quoted-voice-direction dir))
+
+cueDuringWithClef =
+#(define-music-function
+   (parser location what dir clef main-music) (string? ly:dir? string? ly:music?)
+   (_i "Insert contents of quote @var{what} corresponding to @var{main-music},
+in a CueVoice oriented by @var{dir}.")
+   (make-music 'QuoteMusic
+              'element main-music
+              'quoted-context-type 'Voice
+              'quoted-context-id "cue"
+              'quoted-music-name what
+              'quoted-music-clef clef
+              'quoted-voice-direction dir))
 
 
 
diff --git a/ly/string-tunings-init.ly b/ly/string-tunings-init.ly
new file mode 100644 (file)
index 0000000..5bcdbfd
--- /dev/null
@@ -0,0 +1,135 @@
+%%%% This file is part of LilyPond, the GNU music typesetter.
+%%%%
+%%%% Copyright (C) 2010 Carl D. Sorensen <c_sorensen@byu.edu>
+%%%%
+%%%% LilyPond is free software: you can redistribute it and/or modify
+%%%% it under the terms of the GNU General Public License as published by
+%%%% the Free Software Foundation, either version 3 of the License, or
+%%%% (at your option) any later version.
+%%%%
+%%%% LilyPond is distributed in the hope that it will be useful,
+%%%% but WITHOUT ANY WARRANTY; without even the implied warranty of
+%%%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+%%%% GNU General Public License for more details.
+%%%%
+%%%% You should have received a copy of the GNU General Public License
+%%%% along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
+
+\version "2.13.46"
+
+%%  A stringTuning is a list of pitches ordered by string number
+%%  from 1 to N.
+%%  Here we define a number of default string tunings.
+
+%% A scheme function for converting a chord to a string tuning
+#(define (chord->tuning parser tuning-symbol chord)
+  (let* ((ev-chord (car (extract-named-music chord 'EventChord)))
+         (pitches (event-chord-pitches ev-chord)))
+    (ly:parser-define! parser tuning-symbol (reverse pitches))))
+
+%% A music function for converting a chord to a string tuning.
+%% The music argument for \makeStringTuning must be a chord in
+%% absolute mode ordered from the highest string number to the
+%% lowest string number
+
+makeStringTuning =
+#(define-music-function (parser location tuning chord)
+   (symbol? ly:music?)
+   (_ "Convert @{chord} to a string tuning stored in @code{tuning}.
+@{chord} must be in absolute pitches and should have the highest
+string number (generally the lowest pitch) first.  @code{tuning}
+should be a string that will be converted to a symbol.")
+   (begin
+     (chord->tuning parser tuning chord)
+     (make-music 'SequentialMusic 'void #t)))
+
+
+%% A music function for converting a chord to a string tuning
+%% and setting the current context stringTunings property to
+%% the newly-defined-string tuning.
+
+contextStringTuning =
+#(define-music-function (parser location tuning chord)
+   (symbol? ly:music?)
+   (_ "Convert @{chord} to a string tuning stored in @code{tuning},
+and set @code{stringTunings} of the current context to the
+newly-defined tuning.
+@{chord} must be in absolute pitches and should have the highest
+string number (generally the lowest pitch) first.  @code{tuning}
+should be a string that will be converted to a symbol.")
+   (begin
+     (chord->tuning parser tuning chord)
+     #{
+        \set TabStaff.stringTunings = $(ly:parser-lookup parser tuning)
+        \set FretBoards.stringTunings = $(ly:parser-lookup parser tuning)
+     #}))
+
+%% A music function for converting an alist to string-tunings
+makeDefaultStringTunings =
+#(define-music-function (parser location default-tuning-alist)
+   (cheap-list?)
+   (_ "Define default string tunings for each element of
+@code{default-tuning-alist}.")
+   (begin
+     (for-each (lambda (alist-entry)
+                 (chord->tuning parser (car alist-entry) (cdr alist-entry)))
+              default-tuning-alist)
+     (make-music 'SequentialMusic 'void #t)))
+
+% tuning definitions require default pitchnames
+\languageSaveAndChange #default-language
+
+%% Define alist of default string tunings
+defaultStringTunings =
+#`(
+   ;; guitar tunings
+   (guitar-tuning . ,#{<e, a, d g b e'>#})
+   (guitar-seven-string-tuning . ,#{<b,, e, a, d g b e'>#})
+   (guitar-drop-d-tuning . ,#{<d, a, d g b e'>#})
+   (guitar-open-g-tuning . ,#{<d, g, d g b d'>#})
+   (guitar-open-d-tuning . ,#{<d, a, d fis a d'>#})
+   (guitar-dadgad-tuning . ,#{<d, a, d g a d'>#})
+   (guitar-lute-tuning . ,#{<e, a, d fis b e'>#})
+   (guitar-asus4-tuning . ,#{<e, a, d e a e'>#})
+
+   ;; bass tunings
+   (bass-tuning . ,#{<e,, a,, d, g,>#})
+   (bass-four-string-tuning . ,#{<e,, a,, d, g,>#})
+   (bass-drop-d-tuning . ,#{<d,, a,, d, g,>#})
+   (bass-five-string-tuning . ,#{<b,,, e,, a,, d, g,>#})
+   (bass-six-string-tuning . ,#{<b,,, e,, a,, d, g, c>#})
+
+   ;; mandolin tunings
+   (mandolin-tuning . ,#{<g d' a' e''>#})
+
+   ;; tunings for 5-string banjo
+   (banjo-open-g-tuning . ,#{<g' d g b d'>#})
+   (banjo-c-tuning . ,#{<g' c g b d'>#})
+   (banjo-modal-tuning . ,#{<g' d g c' d'>#})
+   (banjo-open-d-tuning . ,#{<a' d fis a d'>#})
+   (banjo-open-dm-tuning . ,#{<a' d fis a d'>#})
+
+   ;; ukulele tunings
+   (ukulele-tuning . ,#{<g' c' e' a'>#})
+   (ukulele-d-tuning . ,#{<a' d' fis' b'>#})
+   (tenor-ukulele-tuning . ,#{<a' e' c' g>#})
+   (baritone-ukulele-tuning . ,#{<e' b g d>#})
+
+   ;; orchestral strings
+   (violin-tuning . ,#{<g d' a' e''>#})
+   (viola-tuning . ,#{<c g d' a'>#})
+   (cello-tuning . ,#{<c, g, d a>#})
+   (double-bass-tuning . ,#{<e,, a,, d, g,>#})
+  )
+
+%% convert 5-string banjo tuning to 4-string by removing the 5th string
+#(define-public (four-string-banjo tuning)
+   (reverse (cdr (reverse tuning))))
+
+%% make all of the default string tunings
+
+\makeDefaultStringTunings #defaultStringTunings
+
+% restore the language
+\languageRestore
+
index e17095c3884f4fea0c1c053a303c2bdc99f62bf1..06e144a23f020902af4345b8d39caceeee1744d3 100644 (file)
@@ -3123,11 +3123,45 @@ def conv(str):
     return str
 
 @rule ((2, 13, 44),
-    _ ("Remove context from overrideTimeSignatureSettings and revertTimeSignatureSettings."))
+    _ ("Remove context from overrideTimeSignatureSettings and revertTimeSignatureSettings.\n"))
+
 def conv(str):
     str = re.sub (r"\\(override|revert)TimeSignatureSettings(\s+[^#]*)(#[^#]*)#", r"\\\1TimeSignatureSettings\2#", str)
     return str
 
+@rule ((2, 13, 46),
+    _ ("Change stringTunings from a list of semitones to a list of pitches.\n"\
+       "Change tenor and baritone ukulele names in string tunings."))
+
+def conv(str):
+    def semitones2pitch(semitones):
+       steps = [0, 0, 1, 1, 2, 3, 3, 4, 4, 5, 5, 6]
+       alterations = ["NATURAL", "SHARP", "NATURAL", "SHARP", "NATURAL", "NATURAL", "SHARP", "NATURAL", "SHARP", "NATURAL", "SHARP", "NATURAL"]
+       octave = 0
+       while semitones > 11:
+           octave += 1
+           semitones -=12
+       while semitones < 0:
+           octave -= 1
+           semitones += 12
+       pitchArgs = "%d %d %s" % (octave, steps[semitones], alterations[semitones])
+       return pitchArgs
+
+    def convert_tones (semitone_list):
+       tones = semitone_list.split ()
+       res = ""
+       for tone in tones:
+           args = semitones2pitch(int(tone))
+           res += ",(ly:make-pitch " + args + ") "
+       return res
+
+    def new_tunings (matchobj):
+       return "stringTunings = #`(" + convert_tones(matchobj.group(1)) + ")"
+    str = re.sub (r"stringTunings\s*=\s*#'\(([\d\s-]*)\)", \
+          new_tunings , str)
+
+    str = re.sub (r"ukulele-(tenor|baritone)-tuning", r"\1-ukulele-tuning", str)
+    return str
 
 # Guidelines to write rules (please keep this at the end of this file)
 #
index 1c9f3effb18ac9fb0b9d67754560e1064420c62a..c02c7fea48cef95254bd7ccf46134fee72c4cb3c 100644 (file)
@@ -1885,9 +1885,9 @@ class TabStaff (Staff):
         if self.string_tunings or self.tablature_format:
             printer.dump ("\\with {")
             if self.string_tunings:
-                printer.dump ("stringTunings = #'(")
+                printer.dump ("stringTunings = #`(")
                 for i in self.string_tunings:
-                    printer.dump ("%s" % i.semitones ())
+                    printer.dump (",%s" % i.lisp_expression ())
                 printer.dump (")")
             if self.tablature_format:
                 printer.dump ("tablatureFormat = #%s" % self.tablature_format)
index d4cfe137662e5aa457ce61afbcb6aab178b09ff5..795701ac7493663f5025b8b0374861fa52f45d89 100644 (file)
@@ -174,6 +174,12 @@ crescendi.  Available values are @samp{hairpin} and @samp{text}.  If unset,
 a hairpin crescendo is used.")
      (crescendoText ,markup? "The text to print at start of non-hairpin
 crescendo, i.e., @samp{cresc.}.")
+     (cueClefGlyph ,string? "Name of the symbol within the music font.")
+     (cueClefOctavation ,integer? "Add this much extra octavation.
+Values of 7 and -7 are common.")
+     (cueClefPosition ,number? "Where should the center of the clef
+symbol go, measured in half staff spaces from the center of the
+staff.")
      (currentBarNumber ,integer? "Contains the current barnumber.
 This property is incremented at every bar line.")
 
@@ -210,6 +216,8 @@ values.")
 
      (explicitClefVisibility ,vector? "@samp{break-visibility}
 function for clef changes.")
+     (explicitCueClefVisibility ,vector? "@samp{break-visibility}
+function for cue clef changes.")
      (explicitKeySignatureVisibility ,vector? "@samp{break-visibility}
 function for explicit key changes.  @samp{\\override} of the
 @code{break-visibility} property will set the visibility for normal
@@ -330,6 +338,9 @@ markup.  Called with four arguments: text, duration, count and context.")
      (middleCClefPosition ,number? "The position of the middle C,
 as determined only by the clef.  This can be calculated by looking at
 @code{clefPosition} and @code{clefGlyph}.")
+     (middleCCuePosition ,number? "The position of the middle C,
+as determined only by the clef of the cue notes.  This can be calculated by
+looking at @code{cueClefPosition} and @code{cueClefGlyph}.")
      (middleCOffset ,number? "The offset of
 middle C from the position given by @code{middleCClefPosition} This
 is used for ottava brackets.")
index 0f66726b474a564c163d2e8e79ccb6e397bcc40a..ff076f8d1566510c16a10bf5846b848725c0fab0 100644 (file)
        (break-visibility . ,begin-of-line-visible)
        (non-musical . #t)
        (space-alist . (
+                       (cue-end-clef . (extra-space . 0.5))
                        (clef . (extra-space . 0.5))
+                       (cue-clef . (extra-space . 0.5))
                        (key-signature . (extra-space . 0.0))
                        (staff-bar . (extra-space . 0.0))
                        (time-signature . (extra-space . 0.0))
        (break-align-orders . ;; end of line
                            #((
                               left-edge
+                              cue-end-clef
                               ambitus
                               breathing-sign
                               clef
+                              cue-clef
                               staff-bar
                               key-cancellation
                               key-signature
                              ;; unbroken
                              (
                               left-edge
+                              cue-end-clef
                               ambitus
                               breathing-sign
                               clef
+                              cue-clef
                               staff-bar
                               key-cancellation
                               key-signature
                               key-signature
                               staff-bar
                               time-signature
+                              cue-clef
                               custos)))
        (non-musical . #t)
        (positioning-done . ,ly:break-alignment-interface::calc-positioning-done)
                        (time-signature . (minimum-space . 1.5))
                        (staff-bar . (minimum-space . 1.5))
                        (clef . (minimum-space . 2.0))
+                       (cue-clef . (minimum-space . 2.0))
+                       (cue-end-clef . (minimum-space . 2.0))
                        (first-note . (fixed-space . 1.0)) ;huh?
                        (right-edge . (extra-space . 0.1))))
        (stencil . ,ly:text-interface::print)
        (break-visibility . ,begin-of-line-visible)
        (glyph-name . ,ly:clef::calc-glyph-name)
        (non-musical . #t)
-       (space-alist . ((ambitus . (extra-space . 2.0))
+       (space-alist . ((cue-clef . (extra-space . 2.0))
                        (staff-bar . (extra-space . 0.7))
                        (key-cancellation . (minimum-space . 3.5))
                        (key-signature . (minimum-space . 3.5))
                                text-interface
                                text-script-interface))))))
 
+    (CueClef
+     . (
+       (avoid-slur . inside)
+       (break-align-anchor . ,ly:break-aligned-interface::calc-extent-aligned-anchor)
+       (break-align-symbol . cue-clef)
+       (break-visibility . ,begin-of-line-visible)
+       (font-size . -4)
+       (glyph-name . ,ly:clef::calc-glyph-name)
+       (non-musical . #t)
+       (full-size-change . #t)
+       (space-alist . ((staff-bar . (minimum-space . 2.7))
+                       (key-cancellation . (minimum-space . 3.5))
+                       (key-signature . (minimum-space . 3.5))
+                       (time-signature . (minimum-space . 4.2))
+                       (custos . (minimum-space . 0.0))
+                       (first-note . (minimum-fixed-space . 3.0))
+                       (next-note . (extra-space . 0.5))
+                       (right-edge . (extra-space . 0.5))))
+       (stencil . ,ly:clef::print)
+       (extra-spacing-height . (-0.5 . 0.5))
+       (Y-offset . ,ly:staff-symbol-referencer::callback)
+       (meta . ((class . Item)
+                (interfaces . (break-aligned-interface
+                               clef-interface
+                               font-interface
+                               staff-symbol-referencer-interface))))))
+
+    (CueEndClef
+     . (
+       (avoid-slur . inside)
+       (break-align-anchor . ,ly:break-aligned-interface::calc-extent-aligned-anchor)
+       (break-align-symbol . cue-end-clef)
+       (break-visibility . ,begin-of-line-invisible)
+       (font-size . -4)
+       (glyph-name . ,ly:clef::calc-glyph-name)
+       (non-musical . #t)
+       (full-size-change . #t)
+       (space-alist . ((clef . (extra-space . 0.7))
+                       (cue-clef . (extra-space . 0.7))
+                       (staff-bar . (extra-space . 0.7))
+                       (key-cancellation . (minimum-space . 3.5))
+                       (key-signature . (minimum-space . 3.5))
+                       (time-signature . (minimum-space . 4.2))
+                       (first-note . (minimum-fixed-space . 5.0))
+                       (next-note . (extra-space . 0.5))
+                       (right-edge . (extra-space . 0.5))))
+       (stencil . ,ly:clef::print)
+       (extra-spacing-height . (-0.5 . 0.5))
+       (Y-offset . ,ly:staff-symbol-referencer::callback)
+       (meta . ((class . Item)
+                (interfaces . (break-aligned-interface
+                               clef-interface
+                               font-interface
+                               staff-symbol-referencer-interface))))))
+
     (Custos
      . (
        (break-align-symbol . custos)
                        (time-signature . (extra-space . 1.25))
                        (staff-bar . (extra-space . 0.6))
                        (key-signature . (extra-space . 0.5))
+                       (cue-clef . (extra-space . 0.5))
                        (right-edge . (extra-space . 0.5))
                        (first-note . (fixed-space . 2.5))))
        (stencil . ,ly:key-signature-interface::print)
        (space-alist . (
                        (time-signature . (extra-space . 1.15))
                        (staff-bar . (extra-space . 1.1))
+                       (cue-clef . (extra-space . 0.5))
                        (right-edge . (extra-space . 0.5))
                        (first-note . (fixed-space . 2.5))))
        (stencil . ,ly:key-signature-interface::print)
        (break-visibility . ,center-invisible)
        (non-musical . #t)
        (space-alist . (
-                       (custos . (extra-space . 0.0))
                        (ambitus . (extra-space . 2.0))
-                       (time-signature . (extra-space . 1.0))
-                       (staff-bar . (extra-space . 0.0))
                        (breathing-sign . (minimum-space . 0.0))
+                       (cue-end-clef . (extra-space . 0.8))
                        (clef . (extra-space . 0.8))
+                       (cue-clef . (extra-space . 0.8))
+                       (staff-bar . (extra-space . 0.0))
+                       (key-cancellation . (extra-space . 0.0))
+                       (key-signature . (extra-space . 0.8))
+                       (time-signature . (extra-space . 1.0))
+                       (custos . (extra-space . 0.0))
                        (first-note . (fixed-space . 2.0))
                        (right-edge . (extra-space . 0.0))
-                       (key-signature . (extra-space . 0.8))
-                       (key-cancellation . (extra-space . 0.0))
                        ))
        (X-extent . (0 . 0))
        (meta . ((class . Item)
 
     (OctavateEight
      . (
-       (break-visibility . ,begin-of-line-visible)
+       (break-visibility . ,inherit-x-parent-visibility)
        (font-shape . italic)
        (font-size . -4)
        (self-alignment-X . ,CENTER)
        (extra-spacing-height . (-1.0 . 1.0))
        (non-musical . #t)
        (space-alist . (
+                       (cue-clef . (extra-space . 1.5))
                        (first-note . (fixed-space . 2.0))
                        (right-edge . (extra-space . 0.5))
                        (staff-bar . (minimum-space . 2.0))))
index 23faf5644a7917e18b7b4a8454dba72b1b20aa40..577b9d2925ceafa29e5dcaf89355275d6600b711 100644 (file)
@@ -148,6 +148,7 @@ e.g., @code{cue}.")
 direct quotes to, e.g., @code{Voice}.")
      (quoted-events ,vector? "A vector of with @code{moment} and
 @code{event-list} entries.")
+     (quoted-music-clef ,string? "The clef of the voice to quote.")
      (quoted-music-name ,string? "The name of the voice to quote.")
      (quoted-transposition ,ly:pitch? "The pitch used for the quote,
 overriding @code{\\transposition}.")
index 688900411fa446304cb390465cdbb6aae86f418f..1f8b593318f1bb409d468c906d2fdfd938d8c53e 100644 (file)
@@ -782,6 +782,7 @@ Syntax:
 
   (if (vector? (ly:music-property quote-music 'quoted-events))
       (let* ((dir (ly:music-property quote-music 'quoted-voice-direction))
+            (clef (ly:music-property quote-music 'quoted-music-clef))
             (main-voice (if (eq? 1 dir) 1 0))
             (cue-voice (if (eq? 1 dir) 0 1))
             (main-music (ly:music-property quote-music 'element))
@@ -793,14 +794,19 @@ Syntax:
            ;; to have opposite stems.
            (begin
              (set! return-value
-
                    ;; cannot context-spec Quote-music, since context
                    ;; for the quotes is determined in the iterator.
                    (make-sequential-music
                     (list
+                     (if (null? clef)
+                         (make-music 'Music)
+                         (make-cue-clef-set clef))
                      (context-spec-music (make-voice-props-set cue-voice) 'CueVoice "cue")
                      quote-music
-                     (context-spec-music (make-voice-props-revert)  'CueVoice "cue"))))
+                     (context-spec-music (make-voice-props-revert) 'CueVoice "cue")
+                     (if (null? clef)
+                         (make-music 'Music)
+                         (make-cue-clef-unset)))))
              (set! main-music
                    (make-sequential-music
                     (list
index 6c10913d388718bfb91414107c41b132f0eb2885..292755e27e21a0ab7a76a8a008ce682164b9817e 100644 (file)
@@ -234,6 +234,10 @@ and duration-log @var{log}."
 (define-public center-visible          #(#f #t #f))
 (define-public end-of-line-visible     #(#t #f #f))
 (define-public all-invisible           #(#f #f #f))
+(define-public (inherit-x-parent-visibility grob)
+  (let ((parent (ly:grob-parent grob X)))
+    (ly:grob-property parent 'break-visibility all-invisible)))
+
 
 (define-public spanbar-begin-of-line-invisible #(#t #f #f))
 
index 757a1876defd38f44c724c9b84ef8daf07c4d0d8..f6e0fb9b0bcc1b146c309a2564f7d7c1c6e13fd3 100644 (file)
                       (sort (map car supported-clefs) string<?)))
          (make-music 'Music)))))
 
+(define-public (make-cue-clef-set clef-name)
+  "Generate the clef setting commands for a cue clef with name CLEF-NAME."
+  (define (make-prop-set props)
+    (let ((m (make-music 'PropertySet)))
+      (map (lambda (x) (set! (ly:music-property m (car x)) (cdr x))) props)
+      m))
+  (let ((e '())
+       (c0 0)
+       (oct 0)
+       (match (string-match "^(.*)([_^])([1-9][0-9]*)$" clef-name)))
+    (if match
+       (begin
+         (set! clef-name (match:substring match 1))
+         (set! oct
+               (* (if (equal? (match:substring match 2) "^") -1 1)
+                  (- (string->number (match:substring match 3)) 1)))))
+    (set! e (assoc-get clef-name supported-clefs))
+    (if e
+       (let* ((musics (map make-prop-set
+                           `(((symbol . cueClefGlyph) (value . ,(car e)))
+                             ((symbol . middleCCuePosition)
+                              (value . ,(+ oct
+                                           (cadr e)
+                                           (assoc-get (car e) c0-pitch-alist))))
+                             ((symbol . cueClefPosition) (value . ,(cadr e)))
+                             ((symbol . cueClefOctavation) (value . ,(- oct))))))
+              (recalc-mid-C (make-music 'ApplyContext))
+              (seq (make-music 'SequentialMusic
+                               'elements (append musics (list recalc-mid-C))))
+              (csp (make-music 'ContextSpeccedMusic)))
+         (set! (ly:music-property recalc-mid-C 'procedure) ly:set-middle-C!)
+         (context-spec-music seq 'Staff))
+       (begin
+         (ly:warning (_ "unknown clef type `~a'") clef-name)
+         (ly:warning (_ "supported clefs: ~a")
+                     (string-join
+                      (sort (map car supported-clefs) string<?)))
+         (make-music 'Music)))))
+
+
+(define-public (make-cue-clef-unset)
+  "Reset the clef settings for a cue clef."
+  (define (make-prop-unset props)
+    (let ((m (make-music 'PropertyUnset)))
+      (set! (ly:music-property m (car props)) (cdr props))
+      m))
+  (let* ((musics (map make-prop-unset
+                       `((symbol . cueClefGlyph)
+                         (symbol . middleCCuePosition)
+                         (symbol . cueClefPosition)
+                         (symbol . cueClefOctavation))))
+        (recalc-mid-C (make-music 'ApplyContext))
+        (seq (make-music 'SequentialMusic
+                         'elements (append musics (list recalc-mid-C))))
+        (csp (make-music 'ContextSpeccedMusic)))
+    (set! (ly:music-property recalc-mid-C 'procedure) ly:set-middle-C!)
+    (context-spec-music seq 'Staff)))
+
+
 ;; a function to add new clefs at runtime
 (define-public (add-new-clef clef-name clef-glyph clef-position octavation c0-position)
   "Append the entries for a clef symbol to supported clefs and c0-pitch-alist"
index 7865b9bff5edbb1cc1f986bb1370aedee4f78e79..8d80356d9a38ff918d0e5eaa6161bf35a4dc872b 100644 (file)
 ;;;; You should have received a copy of the GNU General Public License
 ;;;; along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 
-;; default tunings for common string instruments
-;; guitar tunings
-(define-public guitar-tuning '(4 -1 -5 -10 -15 -20))
-(define-public guitar-seven-string-tuning '(4 -1 -5 -10 -15 -20 -25))
-(define-public guitar-drop-d-tuning '(4 -1 -5 -10 -15 -22))
-(define-public guitar-open-g-tuning '(2 -1 -5 -10 -17 -22))
-(define-public guitar-open-d-tuning '(2 -3 -6 -10 -15 -22))
-(define-public guitar-dadgad-tuning '(2 -3 -5 -10 -15 -22))
-(define-public guitar-lute-tuning '(4 -1 -6 -10 -15 -20))
-(define-public guitar-asus4-tuning '(4 -3 -8 -10 -15 -20))
-;; bass tunings
-(define-public bass-tuning '(-17 -22 -27 -32))
-(define-public bass-four-string-tuning '(-17 -22 -27 -32))
-(define-public bass-drop-d-tuning '(-17 -22 -27 -34))
-(define-public bass-five-string-tuning '(-17 -22 -27 -32 -37))
-(define-public bass-six-string-tuning '(-12 -17 -22 -27 -32 -37))
-;; mandolin
-(define-public mandolin-tuning '(16 9 2 -5))
-;; tunings for 5-string banjo
-(define-public banjo-open-g-tuning '(2 -1 -5 -10 7))
-(define-public banjo-c-tuning '(2 -1 -5 -12 7))
-(define-public banjo-modal-tuning '(2 0 -5 -10 7))
-(define-public banjo-open-d-tuning '(2 -3 -6 -10 9))
-(define-public banjo-open-dm-tuning '(2 -3 -6 -10 9))
-;; convert 5-string banjo tuning to 4-string by removing the 5th string
-(define-public (four-string-banjo tuning)
-  (reverse (cdr (reverse tuning))))
-;; ukulele tunings
-(define-public ukulele-tuning '(9 4 0 7)) ;ukulele  a' e' c' g'
-(define-public ukulele-d-tuning '(11 6 2 9)) ;ukulele d tuning, b' fis' d' a'
-(define-public ukulele-tenor-tuning '(-5 0 4 9)) ;tenor ukulele, g c' e' a'
-(define-public ukulele-baritone-tuning '(-10 -5 -1 4)) ;baritone ukulele, d g b e'
-
 
 ;; for more control over glyph-name calculations,
 ;; we use a custom callback for tab note heads
index c5792d9b80e9c9adc3648bf11efd58f26bc9a3e2..add5e8d911d0a846659ff7b646e02ee0f2bfbf44 100644 (file)
     ;;   use defaults, but combine all beats into a unit if possible
     ;;
     ;;   set all beams to end on beats, but 1 8 to beam entire measure
-    ;;   in order to avoid beaming every beat for entier measure, we set
+    ;;   in order to avoid beaming every beam type for the entire measure, we set
     ;;   triplets back to every beat.
     ((3 . 4) .
-             ((beamExceptions . ((end . (((1 . 8) . (6))
-                                         ((1 . 12) . (3 3 3))))))))
+             ((beamExceptions . ((end . (((1 . 8) . (6))            ;1/8 note whole measure
+                                         ((1 . 12) . (3 3 3)))))))) ;Anything shorter by beat
 
     ;; in 3 8  time:
     ;;   beam entire measure together
     ;;         ly/engraver-init.ly where the default time signature is set
     ;;         are set
     ((4 . 4) .
-             ((beamExceptions . ((end . (((1 . 8) . (4 4))
-                                         ((1 . 12) . (3 3 3 3))))))))
+             ((beamExceptions . ((end . (((1 . 8) . (4 4))  ; 1/8 notes half measure
+                                         ((1 . 12) . (3 3 3 3)))))))) ;Anything shorter by beat
 
     ;; in 4/8 time:
     ;;   combine beats 1 and 2, so beam in 2
index b559a771376a677900f96bf4f627f474c46adebb..a2ee8b9ddb26766184e5f639f34581ac9231ace5 100644 (file)
@@ -341,7 +341,7 @@ chords.  Returns a placement-list."
           tuning)
 
   (define (calc-fret pitch string tuning)
-    (- (ly:pitch-semitones pitch) (list-ref tuning (1- string))))
+    (- (ly:pitch-semitones pitch) (ly:pitch-semitones (list-ref tuning (1- string)))))
 
   (define (note-pitch a)
     (ly:event-property a 'pitch))
index 4b4e51f0bb59e8ee86c3a8908dee8761fe2a58e9..ec6f6b622f40ffee3886474e03adb0609e7cd46c 100755 (executable)
@@ -47,7 +47,7 @@ class CrossRefs:
     global returnCode
 #    print "Node: ", nodeName, " in ", manualName, " found in ", fileName
     if manualName+"/"+nodeName in self.Nodes.keys():
-      print "Error: Duplicate nodename ",nodeName, " in ", fileName, " and ", self.Nodes[manualName+nodeName]
+      print "Error: Duplicate nodename ",nodeName, " in ", fileName, " and ", self.Nodes[manualName+"/"+nodeName][1]
       returnCode=1
     self.Nodes[manualName + "/" + nodeName] = [manualName, fileName]
     self.nodeNames[nodeName] = fileName
@@ -158,7 +158,7 @@ class File:
             if refStart >= 0:
               refFound = True
               if actualToManualName == File.CurrentManualName:
-                print "Warning: xref should be internal around line ", lineNo, " in ", self.fileName
+                print "Warning: should xref be internal around line ", lineNo, " in ", self.fileName, "?"
               twoLines = twoLines[refStart:]
               refNodeStart = twoLines.find("{") + 1
               # TODO Need to check here for nested {}