From e0fa8f5336d294a4d27f8d951f6211d1c1cad211 Mon Sep 17 00:00:00 2001 From: Werner Lemberg Date: Sun, 7 Jan 2007 14:22:03 +0100 Subject: s/addquote/addQuote/ --- Documentation/user/advanced-notation.itely | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Documentation/user/advanced-notation.itely b/Documentation/user/advanced-notation.itely index 2e4463ba15..0ba5eefc2b 100644 --- a/Documentation/user/advanced-notation.itely +++ b/Documentation/user/advanced-notation.itely @@ -1437,19 +1437,19 @@ staff. With quotations, fragments of other parts can be inserted into a part directly. Before a part can be quoted, it must be marked especially as -quotable. This is done with the @code{\addquote} command. +quotable. This is done with the @code{\addQuote} command. @example -\addquote @var{name} @var{music} +\addQuote @var{name} @var{music} @end example @noindent Here, @var{name} is an identifying string. The @var{music} is any kind -of music. Here is an example of @code{\addquote} +of music. Here is an example of @code{\addQuote} @example -\addquote clarinet \relative c' @{ +\addQuote clarinet \relative c' @{ f4 fis g gis @} @end example @@ -1457,7 +1457,7 @@ of music. Here is an example of @code{\addquote} This command must be entered at toplevel, i.e., outside any music blocks. -After calling @code{\addquote}, the quotation may then be done with +After calling @code{\addQuote}, the quotation may then be done with @code{\quoteDuring} or @code{\cueDuring}, @example @@ -1477,7 +1477,7 @@ the previously added @code{clarinet} voice. More precisely, it takes the current time-step of the part being printed, and extracts the notes at the corresponding point of the -@code{\addquote}d voice. Therefore, the argument to @code{\addquote} +@code{\addQuote}d voice. Therefore, the argument to @code{\addQuote} should be the entire part of the voice to be quoted, including any rests at the beginning. @@ -1485,7 +1485,7 @@ Quotations take into account the transposition of both source and target instruments, if they are specified using the @code{\transposition} command. @lilypond[quote,ragged-right,verbatim] -\addquote clarinet \relative c' { +\addQuote clarinet \relative c' { \transposition bes f4 fis g gis } @@ -1512,7 +1512,7 @@ will quote notes (but no rests), together with scripts and dynamics. @refbugs Only the contents of the first @internalsref{Voice} occurring in an -@code{\addquote} command will be considered for quotation, so +@code{\addQuote} command will be considered for quotation, so @var{music} can not contain @code{\new} and @code{\context Voice} statements that would switch to a different Voice. @@ -1559,7 +1559,7 @@ smaller = { \override Beam #'length-fraction = #0.8 } -\addquote clarinet \relative { +\addQuote clarinet \relative { R1*20 r2 r8 c f f } @@ -1622,7 +1622,7 @@ picc = \relative c''' { c8 c c e g2 | a4 g g2 | } -\addquote "picc" { \picc } +\addQuote "picc" { \picc } cbsn = \relative c, { \clef "bass_8" -- cgit v1.2.3 From 8f747ff7c500616fdb45079fdad47fc6325ce6e3 Mon Sep 17 00:00:00 2001 From: Graham Percival Date: Sun, 7 Jan 2007 11:47:23 -0800 Subject: Update instructions for OSX command-line use. --- Documentation/user/running.itely | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/Documentation/user/running.itely b/Documentation/user/running.itely index f4cbfdd326..d1a95e8e0c 100644 --- a/Documentation/user/running.itely +++ b/Documentation/user/running.itely @@ -363,11 +363,36 @@ invoking them directly, e.g. The same is true of the other scripts in that directory, including lilypond-book, convert-ly, abc2ly, etc. -Alternatively, you may add this directory to your path. Modify (or create) +Alternatively, you may create scripts which add the path +automatically. Create a directory to store these scripts, + +@example +mkdir -p ~/bin +cd ~/bin +@end example + +Create a file called @code{lilypond} which contains + +@example +exec @var{path/to}/LilyPond.app/Contents/Resources/bin/lilypond "$@" +@end example + +Create similar files @code{lilypond-book}, @code{convert-ly}, and +any other helper programs you use (@code{abc2ly}, @code{midi2ly}, +etc). Simply replace the @code{bin/lilypond} with +@code{bin/convert-ly} (or other program name) in the above file. + +Make the file executable, + +@example +chmod u+x lilypond +@end example + +Now, add this directory to your path. Modify (or create) a file called @code{.profile} in your home directory such that it contains @example -export PATH=$PATH:@var{path/to}/LilyPond.app/Contents/Resources/bin +export PATH=$PATH:~/bin @end example @noindent -- cgit v1.2.3 From 90fd7e62f33bc819015e6c487a80d23d5b8f7ea5 Mon Sep 17 00:00:00 2001 From: Werner Lemberg Date: Sun, 7 Jan 2007 22:27:34 +0100 Subject: Add macros @q and @qq for quoting as `...' and ``...'', respectively. The idea is to get ‘ and friends for HTML (and XML) output -- ASCII quote characters look ugly in HTML browsers. --- Documentation/user/macros.itexi | 51 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 50 insertions(+), 1 deletion(-) diff --git a/Documentation/user/macros.itexi b/Documentation/user/macros.itexi index 68b52bb513..0a85e749dc 100644 --- a/Documentation/user/macros.itexi +++ b/Documentation/user/macros.itexi @@ -70,6 +70,20 @@ @ref{\NAME\,,,music-glossary} @end macro +@c to get decent quotes in `foo' +@macro q{TEXT} +@html +‘\TEXT\’ +@end html +@end macro + +@c to get decent quotes in ``foo'' +@macro qq{TEXT} +@html +“\TEXT\” +@end html +@end macro + @end ifhtml @@ -90,6 +104,20 @@ @ref{\NAME\,,,music-glossary} @end macro +@c to get decent quotes in `foo' +@macro q{TEXT} +@xml +‘\TEXT\’ +@end xml +@end macro + +@c to get decent quotes in ``foo'' +@macro qq{TEXT} +@xml +“\TEXT\” +@end xml +@end macro + @end ifdocbook @@ -114,6 +142,16 @@ @inforef{\NAME\} @end macro +@c to get decent quotes in `foo' +@macro q{TEXT} +`\TEXT\' +@end macro + +@c to get decent quotes in ``foo'' +@macro qq{TEXT} +``\TEXT\'' +@end macro + @end ifinfo @@ -142,8 +180,19 @@ internals document, @internalsref{\NAME\} user manual, @internalsref{\NAME\} @end macro +@c to get decent quotes in `foo' +@macro q{TEXT} +`\TEXT\' +@end macro + +@c to get decent quotes in ``foo'' +@macro qq{TEXT} +``\TEXT\'' +@end macro + @end iftex + @ifnottex @c **** not TEX **** @@ -201,4 +250,4 @@ user manual, @internalsref{\NAME\} @kindex \WORD\ @end macro - +@c EOF -- cgit v1.2.3 From d40224c98a074a12e19708300a5a84119f567b22 Mon Sep 17 00:00:00 2001 From: Werner Lemberg Date: Sun, 7 Jan 2007 22:29:12 +0100 Subject: Replace `...' and ``...'' with @q (and just very few with @@). Also replace `@code{X}' with @samp{X}. The next version of texinfo will use @lsquo; and @rsquo; in HTML output as quotes for @samp. --- Documentation/user/advanced-notation.itely | 22 +++++----- Documentation/user/basic-notation.itely | 42 +++++++++---------- Documentation/user/changing-defaults.itely | 22 +++++----- Documentation/user/converters.itely | 20 ++++----- Documentation/user/fdl.itexi | 58 +++++++++++++------------- Documentation/user/instrument-notation.itely | 48 ++++++++++----------- Documentation/user/introduction.itely | 4 +- Documentation/user/lilypond-book.itely | 4 +- Documentation/user/music-glossary.tely | 12 +++--- Documentation/user/non-music.itely | 8 ++-- Documentation/user/notation-appendices.itely | 8 ++-- Documentation/user/programming-interface.itely | 28 ++++++------- Documentation/user/putting.itely | 4 +- Documentation/user/running.itely | 8 ++-- Documentation/user/scheme-tutorial.itely | 6 +-- Documentation/user/spacing.itely | 12 +++--- Documentation/user/tutorial.itely | 26 ++++++------ Documentation/user/tweaks.itely | 8 ++-- Documentation/user/working.itely | 16 +++---- 19 files changed, 178 insertions(+), 178 deletions(-) diff --git a/Documentation/user/advanced-notation.itely b/Documentation/user/advanced-notation.itely index 0ba5eefc2b..de31788e6f 100644 --- a/Documentation/user/advanced-notation.itely +++ b/Documentation/user/advanced-notation.itely @@ -621,7 +621,7 @@ individual parts. @cindex whole rests for a full measure @funindex R -Rests for one full measure (or many bars) are entered using `@code{R}'. It +Rests for one full measure (or many bars) are entered using @samp{R}. It is specifically meant for full bar rests and for entering parts: the rest can expand to fill a score with rests, or it can be printed as a single multi-measure rest. This expansion is controlled by the property @@ -650,7 +650,7 @@ R1*13/8*12 | An @code{R} spanning a single measure is printed as either a whole rest or a breve, centered in the measure regardless of the time signature. -If there are only a few measures of rest, LilyPond prints ``church rests'' +If there are only a few measures of rest, LilyPond prints @q{church rests} (a series of rectangles) in the staff. To replace that with a simple rest, use @code{MultiMeasureRest.expand-limit}. @@ -804,8 +804,8 @@ c1 \mark \default @end lilypond @noindent -The letter@tie{}`I' is skipped in accordance with engraving traditions. -If you wish to include the letter `I', then use +The letter@tie{}@q{I} is skipped in accordance with engraving traditions. +If you wish to include the letter @q{I}, then use @example \set Score.markFormatter = #format-mark-alphabet @@ -1145,7 +1145,7 @@ c'4^"in G" @node Ottava brackets @subsection Ottava brackets -`Ottava' brackets introduce an extra transposition of an octave for +@q{Ottava} brackets introduce an extra transposition of an octave for the staff. They are created by invoking the function @code{set-octavation} @@ -1317,8 +1317,8 @@ The first @code{g} appears only once, although it was specified twice (once in each part). Stem, slur, and tie directions are set automatically, depending whether there is a solo or unisono. The first part (with context called @code{one}) always gets up stems, and -`Solo', while the second (called @code{two}) always gets down stems and -`Solo II'. +@q{Solo}, while the second (called @code{two}) always gets down stems and +@q{Solo II}. If you just want the merging parts, and not the textual markings, you may set the property @code{printPartCombineTexts} to false @@ -1389,7 +1389,7 @@ will be ignored. @cindex Hiding staves In orchestral scores, staff lines that only have rests are usually -removed; this saves some space. This style is called `French Score'. +removed; this saves some space. This style is called @q{French Score}. For @internalsref{Lyrics}, @internalsref{ChordNames} and @internalsref{FiguredBass}, this is switched on by default. When the lines of these contexts turn out @@ -1676,7 +1676,7 @@ cadenza = \relative c' { In the 20th century, composers have greatly expanded the musical vocabulary. With this expansion, many innovations in musical notation -have been tried. The book ``Music Notation in the 20th century'' by +have been tried. The book @q{Music Notation in the 20th century} by Kurt Stone gives a comprehensive overview (see @ref{Literature list}). @@ -1995,7 +1995,7 @@ accurately. Use @code{8 8} instead. @cindex note heads, special Different noteheads are used by various instruments for various -meanings -- crosses are used for ``parlato'' with vocalists, stopped +meanings -- crosses are used for @q{parlato} with vocalists, stopped notes on guitar; diamonds are used for harmonics on string instruments, etc. There is a shorthand (@code{\harmonic}) for diamond shapes; the other notehead styles are produced by tweaking the property @@ -2277,7 +2277,7 @@ combinations are possible, e.g. @cindex easy notation @cindex Hal Leonard -The `easy play' note head includes a note name inside the head. It is +The @q{easy play} note head includes a note name inside the head. It is used in music for beginners @lilypond[quote,ragged-right,verbatim,fragment,staffsize=26] diff --git a/Documentation/user/basic-notation.itely b/Documentation/user/basic-notation.itely index 1e1a59a874..1be15a58d0 100644 --- a/Documentation/user/basic-notation.itely +++ b/Documentation/user/basic-notation.itely @@ -68,9 +68,9 @@ c1 @funindex , The optional octave specification takes the form of a series of -single quote (`@code{'}') characters or a series of comma -(`@code{,}') characters. Each @code{'} raises the pitch by one -octave; each @code{,} lowers the pitch by an octave. +single quote (@samp{'}) characters or a series of comma +(@samp{,}) characters. Each @samp{'} raises the pitch by one +octave; each @samp{,} lowers the pitch by an octave. @lilypond[quote,ragged-right,fragment,verbatim] \clef treble @@ -117,8 +117,8 @@ suffix; a natural pitch is shown as a simple note name a4 aes a2 @end lilypond -The input @code{d e f} is interpreted as ``print a D-natural, -E-natural, and an F-natural,'' regardless of the key +The input @code{d e f} is interpreted as @q{print a D-natural, +E-natural, and an F-natural,} regardless of the key signature. For more information about the distinction between musical content and the presentation of that content, see @ref{More about pitches}. @@ -167,7 +167,7 @@ print them manually. A reminder accidental can be forced by adding an exclamation mark @code{!} after the pitch. A cautionary accidental (i.e., an accidental within parentheses) can be obtained by adding the -question mark `@code{?}' after the pitch. These extra accidentals +question mark @samp{?} after the pitch. These extra accidentals can be used to produce natural signs, too. @lilypond[quote,ragged-right,fragment,verbatim,relative=1] @@ -422,7 +422,7 @@ mus = { \key d \major cis d fis g } @code{\transpose} may also be used to input written notes for a transposing instrument. Pitches are normally entered into LilyPond -in C (or ``concert pitch''), but they may be entered in another +in C (or @q{concert pitch}), but they may be entered in another key. For example, when entering music for a B-flat trumpet which begins on concert D, one would write @@ -499,8 +499,8 @@ Program reference: @internalsref{Rest}. @funindex \skip @funindex s -An invisible rest (also called a `skip') can be entered like a note -with note name `@code{s}' or with @code{\skip @var{duration}} +An invisible rest (also called a @q{skip}) can be entered like a note +with note name @samp{s} or with @code{\skip @var{duration}} @lilypond[fragment,quote,ragged-right,verbatim,relative=2] a4 a4 s4 a4 \skip 1 a4 @@ -616,7 +616,7 @@ duration. The default for the first note is a quarter note. @funindex . -To obtain dotted note lengths, simply add a dot (`@code{.}') to +To obtain dotted note lengths, simply add a dot (@samp{.}) to the number. Double-dotted notes are produced in a similar way. @lilypond[quote,ragged-right,fragment,verbatim] @@ -753,7 +753,7 @@ Examples: @inputfileref{input/@/regression,tuplet@/-nest@/.ly}. @subsection Scaling durations You can alter the length of duration by a fraction @var{N/M} -appending `@code{*}@var{N/M}' (or `@code{*}@var{N}' if @var{M=1}). This +appending @samp{*@var{N/M}} (or @samp{*@var{N}} if @var{M=1}). This will not affect the appearance of the notes or rests produced. In the following example, the first three notes take up exactly two @@ -779,7 +779,7 @@ This manual: @ref{Tuplets} @funindex | Bar checks help detect errors in the durations. A bar check is -entered using the bar symbol, `@code{|}'. Whenever it is encountered +entered using the bar symbol, @samp{|}. Whenever it is encountered during interpretation, it should fall on a measure boundary. If it does not, a warning is printed. In the next example, the second bar check will signal an error @@ -962,7 +962,7 @@ them simultaneously, separating the voices with @code{\\} @end lilypond The separator causes @internalsref{Voice} contexts@footnote{Polyphonic -voices are sometimes called ``layers'' in other notation packages} +voices are sometimes called @q{layers} in other notation packages} @cindex layers to be instantiated. They bear the names @code{"1"}, @code{"2"}, etc. In each of these contexts, vertical direction of slurs, stems, etc., is set @@ -1377,7 +1377,7 @@ command Here, @var{type} should be @code{\major} or @code{\minor} to get @var{pitch}-major or @var{pitch}-minor, respectively. You may also -use the standard mode names (also called ``church modes''): @code{\ionian}, +use the standard mode names (also called @q{church modes}): @code{\ionian}, @code{\locrian}, @code{\aeolian}, @code{\mixolydian}, @code{\lydian}, @code{\phrygian}, and @code{\dorian}. @@ -1537,7 +1537,7 @@ This is internally translated into The property @code{measurePosition} contains a rational number indicating how much of the measure has passed at this point. Note that this is a negative number; @code{\partial 4} is internally -translated to mean ``there is a quarter note left in the bar''. +translated to mean @qq{there is a quarter note left in the bar.} @refbugs @@ -1774,7 +1774,7 @@ System start delimiters may be deeply nested, @cindex adjusting staff symbol Notes, dynamic signs, etc., are grouped -with a set of horizontal lines, called a staff (plural `staves'). In +with a set of horizontal lines, called a staff (plural @q{staves}). In LilyPond, these lines are drawn using a separate layout object called @code{staff symbol}. @@ -1907,7 +1907,7 @@ This section deals with notation that affects groups of notes. A tie connects two adjacent note heads of the same pitch. The tie in effect extends the length of a note. Ties should not be confused with slurs, which indicate articulation, or phrasing slurs, which indicate -musical phrasing. A tie is entered using the tilde symbol `@code{~}' +musical phrasing. A tie is entered using the tilde symbol @samp{~} @lilypond[quote,ragged-right,fragment,verbatim] e' ~ e' ~ @@ -2285,7 +2285,7 @@ c4 \grace c16 c4 Unlike @code{\acciaccatura} and @code{\appoggiatura}, the @code{\grace} command does not start a slur. -Internally, timing for grace notes is done using a second, `grace' +Internally, timing for grace notes is done using a second, @q{grace} timing. Every point in time consists of two rational numbers: one denotes the logical time, one denotes the grace timing. The above example is shown here with timing tuples @@ -2331,7 +2331,7 @@ following the main note. c1 \afterGrace d1 { c16[ d] } c4 @end lilypond -This will put the grace notes after a ``space'' lasting 3/4 of the +This will put the grace notes after a @q{space} lasting 3/4 of the length of the main note. The fraction 3/4 can be changed by setting @code{afterGraceFraction}, ie. @@ -3084,7 +3084,7 @@ c1 In the following example, the first ending is not a complete bar (it only had 3 beats). The beginning of the second ending -contains the 4th beat from the first ending. This ``extra'' +contains the 4th beat from the first ending. This @q{extra} beat in the second ending is due to the first time ending, and has nothing to do with the @code{\partial} at the beginning of the example. @@ -3284,7 +3284,7 @@ Example files: @inputfileref{input/@/regression,chord@/-tremolo@/.ly}, @funindex tremoloFlags Tremolo marks can be printed on a single note by adding -`@code{:}[@var{number}]' after the note. The number indicates the +@q{@code{:}[@var{number}]} after the note. The number indicates the duration of the subdivision, and it must be at least 8. A @var{length} value of 8 gives one line across the note stem. If the length is omitted, the last value (stored in @code{tremoloFlags}) is diff --git a/Documentation/user/changing-defaults.itely b/Documentation/user/changing-defaults.itely index 1dfaffd479..d1551d7902 100644 --- a/Documentation/user/changing-defaults.itely +++ b/Documentation/user/changing-defaults.itely @@ -6,7 +6,7 @@ The purpose of LilyPond's design is to provide the finest output quality as a default. Nevertheless, it may happen that you need to change this default layout. The layout is controlled through a large -number of proverbial ``knobs and switches.'' This chapter does not +number of proverbial @q{knobs and switches.} This chapter does not list each and every knob. Rather, it outlines what groups of controls are available and explains how to lookup which knob to use for a particular effect. @@ -146,7 +146,7 @@ cis' c'' cis'2 | c'' c' @item @code{modern-cautionary} @funindex modern-cautionary -This rule is similar to @code{modern}, but the ``extra'' accidentals +This rule is similar to @code{modern}, but the @q{extra} accidentals (the ones not typeset by @code{default}) are typeset as cautionary accidentals. They are printed in reduced size or with parentheses @lilypond[quote,ragged-right,fragment,verbatim] @@ -184,7 +184,7 @@ accidentals typeset as cautionaries. @item no-reset @funindex no-reset accidental style This is the same as @code{default} but with accidentals lasting -``forever'' and not only until the next measure +@q{forever} and not only until the next measure @lilypond[quote,ragged-right,fragment,verbatim,relative=1] #(set-accidental-style 'no-reset) c1 cis cis c @@ -687,7 +687,7 @@ R1*2 Contexts are hierarchical, so if a bigger context was specified, for example @context{Staff}, then the change would also apply to all @context{Voice}s in the current stave. The change is applied -`on-the-fly', during the music, so that the setting only affects the +@q{on-the-fly}, during the music, so that the setting only affects the second group of eighth notes. @funindex \unset @@ -763,7 +763,7 @@ Translation @arrow{} Tunable context properties. Notation contexts (like @code{Score} and @code{Staff}) not only store properties, -they also contain plug-ins called ``engravers'' that create notation +they also contain plug-ins called @q{engravers} that create notation elements. For example, the @code{Voice} context contains a @code{Note_head_engraver} and the @code{Staff} context contains a @code{Key_signature_engraver}. @@ -879,7 +879,7 @@ The syntax for this is Here @var{name} is the name of a graphical object, like @code{Stem} or @code{NoteHead}, and @var{property} is an internal variable of the -formatting system (`grob property' or `layout property'). The latter is a +formatting system (@q{grob property} or @q{layout property}). The latter is a symbol, so it must be quoted. The subsection @ref{Constructing a tweak} explains what to fill in for @var{name}, @var{property}, and @var{value}. Here we only discuss the functionality of this command. @@ -945,7 +945,7 @@ affects settings that were made in the same context. In other words, the \revert Staff.Stem #'thickness @end example -Some tweakable options are called ``subproperties'' and reside inside +Some tweakable options are called @q{subproperties} and reside inside properties. To tweak those, use commands of the form @c leave this as a long long @@ -1272,7 +1272,7 @@ This means that we must determine these bits of information: @item a sensible value: here @code{3.0}. @end itemize -Some tweakable options are called ``subproperties'' and reside inside +Some tweakable options are called @q{subproperties} and reside inside properties. To tweak those, use commands in the form @example @@ -1461,13 +1461,13 @@ This object supports the following interfaces: Clicking any of the links will take you to the page of the respective object interface. Each interface has a number of properties. Some of -them are not user-serviceable (``Internal properties''), but others +them are not user-serviceable (@q{Internal properties}), but others can be modified. We have been talking of @emph{the} @code{Fingering} object, but actually it does not amount to much. The initialization file (see @ref{Default files}) -@file{scm/@/define@/-grobs@/.scm} shows the soul of the `object', +@file{scm/@/define@/-grobs@/.scm} shows the soul of the @q{object}, @example (Fingering @@ -1629,7 +1629,7 @@ this. Context properties are modified with @code{\set}. There is a special type of context property: the element description. These properties are named in @code{StudlyCaps} (starting with capital letters). They contain the -``default settings'' for said graphical object as an +@q{default settings} for said graphical object as an association list. See @file{scm/@/define@/-grobs@/.scm} to see what kind of settings there are. Element descriptions may be modified with @code{\override}. diff --git a/Documentation/user/converters.itely b/Documentation/user/converters.itely index 7ba2816ab2..b0d431c14b 100644 --- a/Documentation/user/converters.itely +++ b/Documentation/user/converters.itely @@ -10,11 +10,11 @@ sequencers and XML converters. Refer to the @uref{http://@/lilypond@/.org,website} for more details. These are separate programs from lilypond itself, and are run -on the command-line. By ``command-line'', we mean the command +on the command-line. By @q{command-line}, we mean the command line in the operating system. Windows users -might be more familiar with the terms ``DOS shell'' or -``command shell''; OSX users might be more familiar with the -terms ``terminal'' or ``console''. OSX users should also +might be more familiar with the terms @q{DOS shell} or +@q{command shell}; OSX users might be more familiar with the +terms @q{terminal} or @q{console}. OSX users should also consult @ref{Notes for the MacOS X app}. Describing how to use @@ -67,7 +67,7 @@ It is invoked from the command-line as follows, midi2ly [@var{option}]@dots{} @var{midi-file} @end example -Note that by ``command-line'', we mean the command line of the +Note that by @q{command-line}, we mean the command line of the operating system. See @ref{Converting from other formats} for more information about this. @@ -139,7 +139,7 @@ It is invoked from the command-line as follows. etf2ly [@var{option}]@dots{} @var{etf-file} @end example -Note that by ``command-line'', we mean the command line of the +Note that by @q{command-line}, we mean the command line of the operating system. See @ref{Converting from other formats} for more information about this. @@ -169,7 +169,7 @@ for representing music notation. @command{musicxml2ly} extracts the notes from part-wise MusicXML files, and writes it to a .ly file. It is invoked from the command-line. -Note that by ``command-line'', we mean the command line of the +Note that by @q{command-line}, we mean the command line of the operating system. See @ref{Converting from other formats} for more information about this. @@ -219,7 +219,7 @@ source file. If you say: %%LY voices \set autoBeaming = ##f @end example -This will cause the text following the keyword ``voices'' to be inserted +This will cause the text following the keyword @q{voices} to be inserted into the current voice of the LilyPond output file. Similarly, @@ -228,13 +228,13 @@ Similarly, %%LY slyrics more words @end example -will cause the text following the ``slyrics'' keyword to be inserted +will cause the text following the @q{slyrics} keyword to be inserted into the current line of lyrics. @refbugs -The ABC standard is not very ``standard''. For extended features +The ABC standard is not very @q{standard}. For extended features (e.g., polyphonic music) different conventions exist. Multiple tunes in one file cannot be converted. diff --git a/Documentation/user/fdl.itexi b/Documentation/user/fdl.itexi index a497bbae7c..46ebfc3fb5 100644 --- a/Documentation/user/fdl.itexi +++ b/Documentation/user/fdl.itexi @@ -25,7 +25,7 @@ this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others. -This License is a kind of ``copyleft'', which means that derivative +This License is a kind of @q{copyleft}, which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software. @@ -43,15 +43,15 @@ APPLICABILITY AND DEFINITIONS This License applies to any manual or other work that contains a notice placed by the copyright holder saying it can be distributed -under the terms of this License. The ``Document'', below, refers to any +under the terms of this License. The @q{Document}, below, refers to any such manual or work. Any member of the public is a licensee, and is -addressed as ``you''. +addressed as @q{you}. -A ``Modified Version'' of the Document means any work containing the +A @q{Modified Version} of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language. -A ``Secondary Section'' is a named appendix or a front-matter section of +A @q{Secondary Section} is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly @@ -62,15 +62,15 @@ connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them. -The ``Invariant Sections'' are certain Secondary Sections whose titles +The @q{Invariant Sections} are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. -The ``Cover Texts'' are certain short passages of text that are listed, +The @q{Cover Texts} are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. -A ``Transparent'' copy of the Document means a machine-readable copy, +A @q{Transparent} copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, whose contents can be viewed and edited directly and straightforwardly with generic text editors or (for images composed of @@ -80,7 +80,7 @@ for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup has been designed to thwart or discourage subsequent modification by readers is not Transparent. A copy that is -not ``Transparent'' is called ``Opaque''. +not @q{Transparent} is called @q{Opaque}. Examples of suitable formats for Transparent copies include plain @sc{ascii} without markup, Texinfo input format, La@TeX{} input format, @@ -93,10 +93,10 @@ the @acronym{DTD} and/or processing tools are not generally available, and the machine-generated @acronym{HTML} produced by some word processors for output purposes only. -The ``Title Page'' means, for a printed book, the title page itself, +The @q{Title Page} means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in -formats which do not have any title page as such, ``Title Page'' means +formats which do not have any title page as such, @q{Title Page} means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text. @@ -202,10 +202,10 @@ and required Cover Texts given in the Document's license notice. Include an unaltered copy of this License. @item -Preserve the section entitled ``History'', and its title, and add to +Preserve the section entitled @q{History}, and its title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If -there is no section entitled ``History'' in the Document, create one +there is no section entitled @q{History} in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence. @@ -214,13 +214,13 @@ Version as stated in the previous sentence. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions -it was based on. These may be placed in the ``History'' section. +it was based on. These may be placed in the @q{History} section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission. @item -In any section entitled ``Acknowledgments'' or ``Dedications'', +In any section entitled @q{Acknowledgments} or @q{Dedications}, preserve the section's title, and preserve in the section all the substance and tone of each of the contributor acknowledgments and/or dedications given therein. @@ -231,11 +231,11 @@ unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles. @item -Delete any section entitled ``Endorsements''. Such a section +Delete any section entitled @q{Endorsements}. Such a section may not be included in the Modified Version. @item -Do not retitle any existing section as ``Endorsements'' +Do not retitle any existing section as @q{Endorsements} or to conflict in title with any Invariant Section. @end enumerate @@ -246,7 +246,7 @@ of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles. -You may add a section entitled ``Endorsements'', provided it contains +You may add a section entitled @q{Endorsements}, provided it contains nothing but endorsements of your Modified Version by various parties---for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a @@ -285,11 +285,11 @@ author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work. -In the combination, you must combine any sections entitled ``History'' +In the combination, you must combine any sections entitled @q{History} in the various original documents, forming one section entitled -``History''; likewise combine any sections entitled ``Acknowledgments'', -and any sections entitled ``Dedications''. You must delete all sections -entitled ``Endorsements.'' +@q{History}; likewise combine any sections entitled @q{Acknowledgments}, +and any sections entitled @q{Dedications}. You must delete all sections +entitled @q{Endorsements.} @item COLLECTIONS OF DOCUMENTS @@ -312,7 +312,7 @@ A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, does not as a whole count as a Modified Version of the Document, provided no compilation copyright is claimed for the -compilation. Such a compilation is called an ``aggregate'', and this +compilation. Such a compilation is called an @q{aggregate}, and this License does not apply to the other self-contained works thus compiled with the Document, on account of their being thus compiled, if they are not themselves derivative works of the Document. @@ -359,7 +359,7 @@ differ in detail to address new problems or concerns. See Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this -License ``or any later version'' applies to it, you have the option of +License @q{or any later version} applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version @@ -382,15 +382,15 @@ license notices just after the title page: or any later version published by the Free Software Foundation; with the Invariant Sections being @var{list their titles}, with the Front-Cover Texts being @var{list}, and with the Back-Cover Texts being @var{list}. - A copy of the license is included in the section entitled ``GNU - Free Documentation License''. + A copy of the license is included in the section entitled @q{GNU + Free Documentation License}. @end group @end smallexample -If you have no Invariant Sections, write ``with no Invariant Sections'' +If you have no Invariant Sections, write @q{with no Invariant Sections} instead of saying which ones are invariant. If you have no -Front-Cover Texts, write ``no Front-Cover Texts'' instead of -``Front-Cover Texts being @var{list}''; likewise for Back-Cover Texts. +Front-Cover Texts, write @q{no Front-Cover Texts} instead of +@q{Front-Cover Texts being @var{list}}; likewise for Back-Cover Texts. If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of diff --git a/Documentation/user/instrument-notation.itely b/Documentation/user/instrument-notation.itely index d4da68346b..5b5d4f5a9b 100644 --- a/Documentation/user/instrument-notation.itely +++ b/Documentation/user/instrument-notation.itely @@ -44,7 +44,7 @@ handle this cross-staffing behavior. In this section we discuss the @refbugs Dynamics are not centered, but workarounds do exist. See the -``piano centered dynamics'' template in @ref{Piano templates}. +@q{piano centered dynamics} template in @ref{Piano templates}. @cindex cross staff stem @cindex stem, cross staff @@ -197,7 +197,7 @@ b\sustainUp\sustainDown b g \sustainUp a \sustainDown \bar "|." @end lilypond -The default `*Ped.' style for sustain and damper pedals corresponds to +The default @q{*Ped.} style for sustain and damper pedals corresponds to style @code{#'text}. The sostenuto pedal uses @code{mixed} style by default. @@ -356,7 +356,7 @@ modifier (which may include a number if desired) @lilypond[quote,fragment,verbatim] \chordmode { e1:m e1:7 e1:m7 } @end lilypond -The first number following the root is taken to be the `type' of the +The first number following the root is taken to be the @q{type} of the chord, thirds are added to the root until it reaches the specified number @lilypond[quote,fragment,verbatim] @@ -580,7 +580,7 @@ separators, e.g., @item chordRootNamer The root of a chord is usually printed as a letter with an optional alteration. The transformation from pitch to letter is done by this -function. Special note names (for example, the German ``H'' for a +function. Special note names (for example, the German @q{H} for a B-chord) can be produced by storing a new function in this property. @funindex chordNoteNamer @@ -592,9 +592,9 @@ base can be printed in lower case. @funindex chordPrefixSpacer @item chordPrefixSpacer -The ``m'' for minor chords is usually printed right after the root of +The @q{m} for minor chords is usually printed right after the root of the chord. By setting @code{chordPrefixSpacer}, you can fix a spacer -between the root and ``m''. The spacer is not used when the root +between the root and @q{m}. The spacer is not used when the root is altered. @end table @@ -866,7 +866,7 @@ Program reference: @internalsref{LyricText}, @internalsref{LyricSpace}. @cindex hyphens -Centered hyphens are entered as `@code{--}' between syllables. +Centered hyphens are entered as @samp{--} between syllables. The hyphen will have variable length depending on the space between the syllables and it will be centered between the syllables. @@ -876,7 +876,7 @@ the syllables and it will be centered between the syllables. When a lyric is sung over many notes (this is called a melisma), this is indicated with a horizontal line centered between a syllable and the next one. Such a line is called an extender line, and it is entered as -`@code{__}'. +@samp{__}. In tighly engraved music, hyphens can be removed. Whether this happens can be controlled with the @code{minimum-distance} (minimum @@ -1134,8 +1134,8 @@ in the text, as shown here, @end lilypond -The @code{ignoreMelismata} applies to the syllable ``fas'', so it -should be entered before ``go''. +The @code{ignoreMelismata} applies to the syllable @q{fas}, so it +should be entered before @q{go}. The reverse is also possible: making a lyric line slower than the standard. This can be achieved by insert @code{\skip}s into the @@ -1241,7 +1241,7 @@ done by setting the @code{associatedVoice} property. In the example @end lilypond @noindent -the text for the first stanza is set to a melody called ``lahlah'', +the text for the first stanza is set to a melody called @q{lahlah}, @example \new Lyrics \lyricsto "lahlah" @{ @@ -1251,7 +1251,7 @@ the text for the first stanza is set to a melody called ``lahlah'', The second stanza initially is set to the @code{lahlah} context, but -for the syllable ``ran'', it switches to a different melody. +for the syllable @q{ran}, it switches to a different melody. This is achieved with @example \set associatedVoice = alternative @@ -1261,7 +1261,7 @@ This is achieved with Here, @code{alternative} is the name of the @code{Voice} context containing the triplet. -Again, the command must be one syllable too early, before ``Ty'' in +Again, the command must be one syllable too early, before @q{Ty} in this case. @example @@ -1636,7 +1636,7 @@ can ask them for specific instructions about where to move these examples, and that might get them more involved in the docs. -gp @end ignore -``Parlato'' is spoken without pitch but still with rhythm; it is +@q{Parlato} is spoken without pitch but still with rhythm; it is notated by cross noteheads. This is demonstrated in @ref{Special noteheads}. @@ -2841,16 +2841,16 @@ historic style hufnagel combined do/fa clef -@emph{Modern style} means ``as is typeset in contemporary editions of -transcribed mensural music''. +@emph{Modern style} means @qq{as is typeset in contemporary editions of +transcribed mensural music.} -@emph{Petrucci style} means ``inspired by printings published by the -famous engraver Petrucci (1466-1539)''. +@emph{Petrucci style} means @qq{inspired by printings published by the +famous engraver Petrucci (1466-1539).} -@emph{Historic style} means ``as was typeset or written in historic -editions (other than those of Petrucci)''. +@emph{Historic style} means @qq{as was typeset or written in historic +editions (other than those of Petrucci).} -@emph{Editio XXX style} means ``as is/was printed in Editio XXX''. +@emph{Editio XXX style} means @qq{as is/was printed in Editio XXX.} Petrucci used C clefs with differently balanced left-side vertical beams, depending on which staff line it is printed. @@ -3056,7 +3056,7 @@ the right end of the episem line is often too far to the right. @cindex custos @cindex custodes -A @emph{custos} (plural: @emph{custodes}; Latin word for `guard') is a +A @emph{custos} (plural: @emph{custodes}; Latin word for @q{guard}) is a symbol that appears at the end of a staff. It anticipates the pitch of the first note(s) of the following line thus helping the performer to manage line breaks during performance. @@ -3137,7 +3137,7 @@ Examples: @inputfileref{input/@/regression,custos@/.ly}. @cindex finalis A @emph{divisio} (plural: @emph{divisiones}; Latin word for -`division') is a staff context symbol that is used to structure +@q{division}) is a staff context symbol that is used to structure Gregorian music into phrases and sections. The musical meaning of @emph{divisio minima}, @emph{divisio maior}, and @emph{divisio maxima} can be characterized as short, medium, and long pause, somewhat like @@ -4353,7 +4353,7 @@ entering the chant, as the following excerpt demonstrates In European music from before about 1600, singers were often expected to chromatically alter notes at their own initiative. This is called -``Musica Ficta''. In modern transcriptions, these accidentals are +@q{Musica Ficta}. In modern transcriptions, these accidentals are usually printed over the note. @cindex Accidental, musica ficta diff --git a/Documentation/user/introduction.itely b/Documentation/user/introduction.itely index ce38bab3a5..ffb857be52 100644 --- a/Documentation/user/introduction.itely +++ b/Documentation/user/introduction.itely @@ -526,8 +526,8 @@ polyphony? In polyphonic notation, many voices can share a staff. In this situation, the accidentals and staff are shared, but the stems, slurs, beams, etc., are private to each voice. Hence, engravers should be grouped. The engravers for note heads, stems, slurs, etc., go into a -group called `Voice context,' while the engravers for key, accidental, -bar, etc., go into a group called `Staff context.' In the case of +group called @q{Voice context,} while the engravers for key, accidental, +bar, etc., go into a group called @q{Staff context.} In the case of polyphony, a single Staff context contains more than one Voice context. Similarly, multiple Staff contexts can be put into a single Score context. The Score context is the top level notation context. diff --git a/Documentation/user/lilypond-book.itely b/Documentation/user/lilypond-book.itely index 571bdbc199..0b143a17ed 100644 --- a/Documentation/user/lilypond-book.itely +++ b/Documentation/user/lilypond-book.itely @@ -539,7 +539,7 @@ For HTML (HTML Help, JavaHelp etc.) generation you can use the official DocBook @node Music fragment options @section Music fragment options -In the following, a ``LilyPond command'' refers to any command described +In the following, a @q{LilyPond command} refers to any command described in the previous sections which is handled by @command{lilypond-book} to produce a music snippet. For simplicity, LilyPond commands are only shown in La@TeX{} syntax. @@ -611,7 +611,7 @@ LilyPond, not the text layout. Since no indentation is the default, @item quote Reduce line length of a music snippet by @math{2*0.4}@dmn{in} and put -the output into a quotation block. The value `0.4@dmn{in}' can be +the output into a quotation block. The value @q{0.4@dmn{in}} can be controlled with the @code{exampleindent} option. @item exampleindent diff --git a/Documentation/user/music-glossary.tely b/Documentation/user/music-glossary.tely index e5967140c3..840ac2ccb9 100644 --- a/Documentation/user/music-glossary.tely +++ b/Documentation/user/music-glossary.tely @@ -1420,7 +1420,7 @@ S: crescendo, FI: cresendo, voimistuen. Increasing volume. Indicated by a rightwards opening horizontal wedge or the -abbreviation ``cresc.''. +abbreviation @q{cresc.}. @lilypond[fragment,ragged-right] \key g \major \time 4/4 @@ -1502,7 +1502,7 @@ S: da capo, FI: da capo, alusta. The term indicates repetition of the piece from the beginning to the end or -to a certain place marked @emph{fine}. Mostly abbreviated as ``D.C.''. +to a certain place marked @emph{fine}. Mostly abbreviated as @q{D.C.}. @node dal segno @section dal segno @@ -1516,7 +1516,7 @@ DK: dal segno, S: dal segno, FI: dal segno, lähtien merkistä. -Abbreviated ``d.s.''. Repetition, not from the beginning, but from +Abbreviated @q{d.s.}. Repetition, not from the beginning, but from another place frequently near the beginning marked by a sign: @lilypond[fragment,ragged-right] @@ -1544,7 +1544,7 @@ S: decrescendo, FI: decresendo, hiljentyen. Decreasing tone volume. Indicated by a leftwards opening horizontal wedge -or the abbreviation ``decresc.''. +or the abbreviation @q{decresc.}. @lilypond[fragment,ragged-right] \relative c'' { @@ -2810,7 +2810,7 @@ S: ledton, FI: johtosävel. The seventh @aref{scale degree}, a @aref{semitone} below -the tonic; so called because of its strong tendency to ``lead up'' (resolve +the tonic; so called because of its strong tendency to @q{lead up} (resolve upwards) to the tonic scale degree. @node ledger line @@ -4234,7 +4234,7 @@ A form used frequently for single movements of the @aref{sonata}, falls into three sections called @emph{exposition}, @emph{development} and @emph{recapitulation}. In the exposition the composer introduces some musical ideas, consisting of a number of themes; in the development section the -composer `develops' this material, and in the recapitulation the composer +composer @q{develops} this material, and in the recapitulation the composer repeats the exposition, with certain modifications. The exposition contains a number of themes that fall into two groups, often called first and second subject. Other melodies occurring in each group are considered as diff --git a/Documentation/user/non-music.itely b/Documentation/user/non-music.itely index 0743851592..d7907e6c9c 100644 --- a/Documentation/user/non-music.itely +++ b/Documentation/user/non-music.itely @@ -24,7 +24,7 @@ specific notation. @section Input files The main format of input for LilyPond are text files. By convention, -these files end with ``@code{.ly}''. +these files end with @samp{.ly}. @menu * File structure (introduction):: @@ -381,7 +381,7 @@ file, use The line @code{\include "file.ly"} is equivalent to pasting the contents of file.ly into the current file at the place where you have the \include. For example, for a large project you might write separate files -for each instrument part and create a ``full score'' file which brings +for each instrument part and create a @q{full score} file which brings together the individual instrument files. The initialization of LilyPond is done in a number of files that are @@ -390,7 +390,7 @@ user. Run lilypond --verbose to see a list of paths and files that Lily finds. Files placed in directory @file{PATH/TO/share/lilypond/VERSION/ly/} (where -VERSION is in the form ``2.6.1'') are on the path and available to +VERSION is in the form @q{2.6.1}) are on the path and available to @code{\include}. Files in the current working directory are available to \include, but a file of the same name in LilyPond's installation takes precedence. Files are @@ -649,7 +649,7 @@ You may change this behavior (and print all the headers when defining The default footer is empty, except for the first page, where the @code{copyright} field from @code{\header} is inserted, and the last page, where @code{tagline} from @code{\header} is added. The default -tagline is ``Music engraving by LilyPond (@var{version})''.@footnote{Nicely +tagline is @qq{Music engraving by LilyPond (@var{version})}.@footnote{Nicely printed parts are good PR for us, so please leave the tagline if you can.} diff --git a/Documentation/user/notation-appendices.itely b/Documentation/user/notation-appendices.itely index 32afbd6f1b..e02315b98e 100644 --- a/Documentation/user/notation-appendices.itely +++ b/Documentation/user/notation-appendices.itely @@ -97,12 +97,12 @@ darkcyan darkmagenta darkyellow X color names come several variants: Any name that is spelled as a single word with capitalisation -(e.g. ``LightSlateBlue'') can also be spelled as space separated -words without capitalisation (e.g. ``light slate blue''). +(e.g. @q{LightSlateBlue}) can also be spelled as space separated +words without capitalisation (e.g. @q{light slate blue}). -The word ``grey'' can always be spelled ``gray'' (e.g. ``DarkSlateGray''). +The word @q{grey} can always be spelled @q{gray} (e.g. @q{DarkSlateGray}). -Some names can take a numerical suffix (e.g. ``LightSalmon4''). +Some names can take a numerical suffix (e.g. @q{LightSalmon4}). @subsubheading Color Names without a numerical suffix: diff --git a/Documentation/user/programming-interface.itely b/Documentation/user/programming-interface.itely index 3909b5b65c..89236d940d 100644 --- a/Documentation/user/programming-interface.itely +++ b/Documentation/user/programming-interface.itely @@ -75,7 +75,7 @@ The @code{parser} and @code{location} argument are mandatory, and are used in some advanced situations. The @code{parser} argument is used to access to the value of another LilyPond variable. The @code{location} argument -is used to set the ``origin'' of the music expression that is built +is used to set the @q{origin} of the music expression that is built by the music function, so that in case of a syntax error LilyPond can tell the user an appropriate place to look in the input file. @@ -325,7 +325,7 @@ traLaLa = @{ c'4 d'4 @} @noindent is internally converted to a Scheme definition @example -(define traLaLa @var{Scheme value of ``@code{... }''}) +(define traLaLa @var{Scheme value of `@code{... }'}) @end example This means that input variables and Scheme variables may be freely @@ -356,7 +356,7 @@ the dummy statement in the above example, the @code{newLa} definition is executed before @code{traLaLa} is defined, leading to a syntax error. -The above example shows how to `export' music expressions from the +The above example shows how to @q{export} music expressions from the input to the Scheme interpreter. The opposite is also possible. By wrapping a Scheme value in the function @code{ly:export}, a Scheme value is interpreted as if it were entered in LilyPond syntax. @@ -405,7 +405,7 @@ available is in the Program reference manual, under @internalsref{Music expressions}. @item -`type' or interface: Each music name has several `types' or +@q{type} or interface: Each music name has several @q{types} or interfaces, for example, a note is an @code{event}, but it is also a @code{note-event}, a @code{rhythmic-event}, and a @code{melodic-event}. All classes of music are listed in the @@ -425,7 +425,7 @@ under @internalsref{Music properties}. A compound music expression is a music object that contains other music objects in its properties. A list of objects can be stored in -the @code{elements} property of a music object, or a single `child' +the @code{elements} property of a music object, or a single @q{child} music object in the @code{element} object. For example, @internalsref{SequentialMusic} has its children in @code{elements}, and @internalsref{GraceMusic} has its single argument in @@ -581,7 +581,7 @@ d' @subsection Doubling a note with slurs (example) Suppose we want to create a function which translates -input like ``@code{a}'' into ``@code{a( a)}''. We begin +input like @samp{a} into @samp{a( a)}. We begin by examining the internal representation of the music we want to end up with. @@ -620,7 +620,7 @@ we want to end up with. @end example The bad news is that the @code{SlurEvent} expressions -must be added ``inside'' the note (or more precisely, +must be added @q{inside} the note (or more precisely, inside the @code{EventChord} expression). Now we examine the input, @@ -758,12 +758,12 @@ necessary, but just like clear variable names, it is good practice. (let ((result-event-chord (ly:music-deep-copy event-chord))) @end example -`@code{let}' is used to declare local variables. Here we use one local -variable, named `@code{result-event-chord}', to which we give the value -@code{(ly:music-deep-copy event-chord)}. `@code{ly:music-deep-copy}' is +@code{let} is used to declare local variables. Here we use one local +variable, named @code{result-event-chord}, to which we give the value +@code{(ly:music-deep-copy event-chord)}. @code{ly:music-deep-copy} is a function specific to LilyPond, like all functions prefixed by -`@code{ly:}'. It is use to make a copy of a music -expression. Here we copy `@code{event-chord} (the parameter of the +@code{ly:}. It is use to make a copy of a music +expression. Here we copy @code{event-chord} (the parameter of the function). Recall that our purpose is to add a marcato to an @code{EventChord} expression. It is better to not modify the @code{EventChord} which was given as an argument, because it may be @@ -797,7 +797,7 @@ former elements property, with an extra item: the (ly:music-property result-event-chord 'elements)) @end example -`@code{cons}' is used to add an element to a list without modifying the +@code{cons} is used to add an element to a list without modifying the original list. This is what we want: the same list as before, plus the new @code{ArticulationEvent} expression. The order inside the elements property is not important here. @@ -961,7 +961,7 @@ The arguments are @item argi-type? a type predicate for the i@var{th} argument @item layout -the `layout' definition +the @q{layout} definition @item props a list of alists, containing all active properties. @end table diff --git a/Documentation/user/putting.itely b/Documentation/user/putting.itely index f585f2d00f..e66126d243 100644 --- a/Documentation/user/putting.itely +++ b/Documentation/user/putting.itely @@ -22,7 +22,7 @@ want something that isn't covered? Start off with the template that seems closest to what you want to end up with. Let's say that you want to write something for soprano and -cello. In this case, we would start with ``Notes and lyrics'' (for the +cello. In this case, we would start with @q{Notes and lyrics} (for the soprano part). @example @@ -52,7 +52,7 @@ text = \lyricmode @{ @} @end example -Now we want to add a cello part. Let's look at the ``Notes only'' example: +Now we want to add a cello part. Let's look at the @q{Notes only} example: @example \version "2.9.13" diff --git a/Documentation/user/running.itely b/Documentation/user/running.itely index 89c786b535..8135093e54 100644 --- a/Documentation/user/running.itely +++ b/Documentation/user/running.itely @@ -7,11 +7,11 @@ This chapter details the technicalities of running LilyPond. Some of these commands are run from the command-line. By -``command-line'', we mean the command +@q{command-line}, we mean the command line in the operating system. Windows users -might be more familiar with the terms ``DOS shell'' or -``command shell''; OSX users might be more familiar with the -terms ``terminal'' or ``console''. OSX users should also +might be more familiar with the terms @q{DOS shell} or +@q{command shell}; OSX users might be more familiar with the +terms @q{terminal} or @q{console}. OSX users should also consult @ref{Notes for the MacOS X app}. Describing how to use diff --git a/Documentation/user/scheme-tutorial.itely b/Documentation/user/scheme-tutorial.itely index 64f1ff6e18..7f0fcaf40a 100644 --- a/Documentation/user/scheme-tutorial.itely +++ b/Documentation/user/scheme-tutorial.itely @@ -1,4 +1,4 @@ - +@c -*- coding: utf-8; mode: texinfo; -*- @node Scheme tutorial @appendix Scheme tutorial @@ -146,8 +146,8 @@ staff lines, so these stem lines will be @code{2.6} times the width of staff lines. This makes stems almost twice as thick as their normal size. To distinguish between variables defined in input files (like @code{twentyFour} in the example above) and variables of internal -objects, we will call the latter ``properties'' and the former -``identifiers.'' So, the stem object has a @code{thickness} property, +objects, we will call the latter @q{properties} and the former +@q{identifiers.} So, the stem object has a @code{thickness} property, while @code{twentyFour} is an identifier. @cindex properties vs. identifiers diff --git a/Documentation/user/spacing.itely b/Documentation/user/spacing.itely index b94c1da95a..eaf426681f 100644 --- a/Documentation/user/spacing.itely +++ b/Documentation/user/spacing.itely @@ -15,8 +15,8 @@ This influences where line breaks are chosen, and thus ultimately, how many pages a piece of music takes. Globally speaking, this procedure happens in four steps: first, -flexible distances (``springs'') are chosen, based on durations. All -possible line breaking combinations are tried, and a ``badness'' score +flexible distances (@q{springs}) are chosen, based on durations. All +possible line breaking combinations are tried, and a @q{badness} score is calculated for each. Then the height of each possible system is estimated. Finally, a page breaking and line breaking combination is chosen so that neither the horizontal nor the vertical spacing is too cramped @@ -704,7 +704,7 @@ lilypond .ly @subsection Horizontal spacing overview The spacing engine translates differences in durations into stretchable -distances (``springs'') of differring lengths. Longer durations get +distances (@q{springs}) of differring lengths. Longer durations get more space, shorter durations get less. The shortest durations get a fixed amount of space (which is controlled by @code{shortest-duration-space} in the @internalsref{SpacingSpanner} @@ -1021,7 +1021,7 @@ for details. @refbugs -Line breaks can only occur if there is a ``proper'' bar line. A note +Line breaks can only occur if there is a @q{proper} bar line. A note which is hanging over a bar line is not proper, such as @lilypond[quote,ragged-right,relative=2,fragment,verbatim] @@ -1119,8 +1119,8 @@ the absence of notes. This is so that single-staff polyphony with rests in one of the parts does not throw off the @code{Page_turn_engraver}). When it finds a sufficiently long section without notes, the @code{Page_turn_engraver} will insert an @code{\allowPageTurn} at the final barline in that section, unless -there is a ``special'' barline (such as a double bar), in which case the -@code{\allowPageTurn} will be inserted at the final ``special'' barline in +there is a @q{special} barline (such as a double bar), in which case the +@code{\allowPageTurn} will be inserted at the final @q{special} barline in the section. @funindex minimumPageTurnLength diff --git a/Documentation/user/tutorial.itely b/Documentation/user/tutorial.itely index 33e147d432..d4d9ebfaa6 100644 --- a/Documentation/user/tutorial.itely +++ b/Documentation/user/tutorial.itely @@ -398,8 +398,8 @@ d cis fis @end example @noindent -The code @samp{d} does not mean `print a black dot just below the -staff.' Rather, it means: `a note with pitch D-natural.' In the key +The code @samp{d} does not mean @qq{print a black dot just below the +staff.} Rather, it means: @qq{a note with pitch D-natural.} In the key of A-flat major, it does get an accidental @lilypond[quote,notime,fragment,relative=1,verbatim] @@ -500,8 +500,8 @@ according to standard notation conventions. @c better to have this just before the `octaves are bad' snipped @c but we'd need to remove the ', from \key and tie -To raise a note by an octave, add a high quote @code{'} (apostrophe) to -the note name, to lower a note one octave, add a `low quote' @code{,} +To raise a note by an octave, add a high quote @samp{'} (apostrophe) to +the note name, to lower a note one octave, add a @q{low quote} @samp{,} (comma). Middle C is @code{c'} @lilypond[quote,notime,fragment,verbatim] @@ -520,11 +520,11 @@ b'8. cis''16 b'8 d''4 d''8 @noindent This example shows that music in a high register needs lots of quotes. This makes the input less readable, and it is a source of errors. The -solution is to use `relative octave' mode. This is the +solution is to use @q{relative octave} mode. This is the most convenient way to copy existing music. -In relative mode, a note without octavation quotes (i.e., the @code{'} -or @code{,} after a note) is chosen so that it is closest to the +In relative mode, a note without octavation quotes (i.e., the @samp{'} +or @samp{,} after a note) is chosen so that it is closest to the previous one. For example, @samp{c f} goes up while @samp{c g} goes down. @@ -608,7 +608,7 @@ notes This technique is useful for non-monophonic music. To enter music with more voices or more staves, we also combine expressions in parallel. Two voices that should play at the same time, are entered -as a simultaneous combination of two sequences. A `simultaneous' +as a simultaneous combination of two sequences. A @q{simultaneous} music expression is formed by enclosing expressions in @code{<<} and @code{>>}. In the following example, three sequences (all containing two separate notes) are combined simultaneously @@ -696,7 +696,7 @@ staff is marked by adding @code{\new Staff} before it. These @end lilypond -The command @code{\new} introduces a `notation context.' A notation +The command @code{\new} introduces a @q{notation context.} A notation context is an environment in which musical events (like notes or @code{\clef} commands) are interpreted. For simple pieces, such notation contexts are created automatically. For more complex pieces, it @@ -933,7 +933,7 @@ see @ref{Partial measures}. A comment is a remark for the human reader of the music input; it is ignored while parsing, so it has no effect on the printed output. There are two types of comments. The percent symbol @samp{%} -introduces a line comment; after @code{%} the rest of the line is +introduces a line comment; after @samp{%} the rest of the line is ignored. A block comment marks a whole section of music input. Anything that is enclosed in @code{%@{} and @code{%@}} is ignored. The following fragment shows possible uses for comments @@ -1011,7 +1011,7 @@ The lyrics can be set to these notes, combining both with the @cindex melisma @cindex extender line @c synonyms? -This melody ends on a @rglos{melisma}, a single syllable (`free') +This melody ends on a @rglos{melisma}, a single syllable (@q{free}) sung to more than one note. This is indicated with an @emph{extender line}. It is entered as two underscores, i.e., @@ -1163,7 +1163,7 @@ voices with @code{\\} For polyphonic music typesetting, spacer rests can also be convenient; these are rests that do not print. They are useful for filling up voices that temporarily do not play. Here is the same example with a -spacer rest (@code{s}) instead of a normal rest (@code{r}), +spacer rest (@samp{s}) instead of a normal rest (@samp{r}), @lilypond[quote,verbatim,relative=2,fragment] << { a4 g2 f4~ f4 } \\ @@ -1405,7 +1405,7 @@ leading to More in-depth information on preparing parts and scores can be found in the notation manual; see @ref{Orchestral music}. -Setting run-time variables (`properties') is discussed in +Setting run-time variables (@q{properties}) is discussed in @ref{Changing context properties on the fly}. diff --git a/Documentation/user/tweaks.itely b/Documentation/user/tweaks.itely index 27b74e1fc2..d2d42b2c91 100644 --- a/Documentation/user/tweaks.itely +++ b/Documentation/user/tweaks.itely @@ -141,7 +141,7 @@ object. The same mechanism can be used to move other types of objects; simply replace @code{TextScript} with the name of another object. -To find the object name, look at the ``@strong{see also}'' at +To find the object name, look at the @q{@strong{see also}} at bottom of the relevant documentation page. For example, at the bottom of @ref{Dynamics}, we see @@ -244,9 +244,9 @@ f-5 f-5 @end lilypond - @item +@item Setting the @code{transparent} property will cause an object to be printed -in `invisible ink': the object is not printed, but all its other +in @q{invisible ink}: the object is not printed, but all its other behavior is retained. The object still takes up space, it takes part in collisions, and slurs, ties, and beams can be attached to it. @@ -390,7 +390,7 @@ require extra space. If these repeats are spread over two systems, they will take up more space than one system with the volta repeats and another system without. -Another example is moving dynamics which ``stick out'' of +Another example is moving dynamics which @q{stick out} of a system. @lilypond[verbatim,quote,fragment] diff --git a/Documentation/user/working.itely b/Documentation/user/working.itely index 73b83dc16e..9b62ca5ed9 100644 --- a/Documentation/user/working.itely +++ b/Documentation/user/working.itely @@ -71,7 +71,7 @@ which version of LilyPond you used. @item @strong{Include checks}: @ref{Bar check} and @ref{Octave check}. If you include checks every so often, then if you make a mistake, you can pinpoint -it quicker. How often is ``every so often''? It depends on the complexity +it quicker. How often is @q{every so often}? It depends on the complexity of the music. For very simple music, perhaps just once or twice. For very complex music, perhaps every bar. @@ -79,12 +79,12 @@ very complex music, perhaps every bar. either in the music itself or in the output you desire, it's often good to write only one bar per line. Saving screen space by cramming eight bars per line just isn't -worth it if you have to `debug' your files. +worth it if you have to @q{debug} your files. @item @strong{Comment your files}. Use either bar numbers (every so often) or -references to musical themes (``second theme in violins,'' ``fourth -variation'', etc). You may not need comments when you're writing the piece +references to musical themes (@q{second theme in violins,} @q{fourth +variation,} etc.). You may not need comments when you're writing the piece for the first time, but if you want to go back to change something two or three years later, or if you pass the source over to a friend, it will be much more @@ -523,7 +523,7 @@ prefers. The top of @file{music.ly} would then look like this: This approach can be useful even if you are only producing one set of parts. I use half a dozen different -``style sheet'' files for my projects. I begin every music +@q{style sheet} files for my projects. I begin every music file with @code{\include "../global.ly"}, which contains @example @@ -557,9 +557,9 @@ are listed in @ref{Updating files with convert-ly}. For example, in LilyPond 2.4 and earlier, accents and non-English letters were entered using LaTeX -- for example, -"@code{No\"el}" (this would print the French word for -`Christmas'). In LilyPond 2.6 and above, the special -"@code{ë}" must be entered directly into the LilyPond file as an +@samp{No\"el} (this would print the French word for +@q{Christmas}). In LilyPond 2.6 and above, the special +@samp{ë} must be entered directly into the LilyPond file as an UTF-8 character. @code{convert-ly} cannot change all the LaTeX special characters into UTF-8 characters; you must manually update your old LilyPond files. -- cgit v1.2.3 From aaed4a183e2df3fa403ef89a078561d023dede2e Mon Sep 17 00:00:00 2001 From: Werner Lemberg Date: Sun, 7 Jan 2007 23:04:52 +0100 Subject: typo --- Documentation/user/introduction.itely | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/user/introduction.itely b/Documentation/user/introduction.itely index 78051435e7..f8accaa503 100644 --- a/Documentation/user/introduction.itely +++ b/Documentation/user/introduction.itely @@ -111,7 +111,7 @@ LilyPond Feta font (2003) In spacing, the distribution of space should reflect the durations between notes. However, many modern scores adhere to the durations with mathematical precision, which leads to poor results. In the next -example a motive is printed twice : once using exact mathematical +example a motive is printed twice: once using exact mathematical spacing, and once with corrections. Can you spot which fragment is which? -- cgit v1.2.3 From 63f9e148c43dc99e36e9650ceb976dc2b98c7812 Mon Sep 17 00:00:00 2001 From: John Mandereau Date: Mon, 8 Jan 2007 00:07:41 +0100 Subject: Remove colons before examples in introduction.itely --- Documentation/user/introduction.itely | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Documentation/user/introduction.itely b/Documentation/user/introduction.itely index f8accaa503..975f4bdb87 100644 --- a/Documentation/user/introduction.itely +++ b/Documentation/user/introduction.itely @@ -389,7 +389,7 @@ separately. Such plug-ins are called @code{engraver}s, by analogy with craftsmen who translate musical ideas to graphic symbols. In the following example, we see how we start out with a plug-in for -note heads, the @code{Note_heads_engraver}: +note heads, the @code{Note_heads_engraver} @lilypond[quote,ragged-right] \include "engraver-example.ily" @@ -481,7 +481,7 @@ the @code{Clef_engraver} defines a reference point for the staff @end lilypond @noindent -and the @code{Stem_engraver} adds stems: +and the @code{Stem_engraver} adds stems @lilypond[quote,ragged-right] \include "engraver-example.ily" @@ -649,7 +649,7 @@ and representation take up less than 10% of the source code. We have written LilyPond as an experiment of how to condense the art of music engraving into a computer program. Thanks to all that hard work, the program can now be used to perform useful tasks. The -simplest application is printing notes: +simplest application is printing notes @lilypond[quote,relative=1,fragment] \time 2/4 c4 c g'4 g a4 a g2 @@ -667,7 +667,7 @@ By adding chord names and lyrics we obtain a lead sheet: @end lilypond Polyphonic notation and piano music can also be printed. The following -example combines some more exotic constructs: +example combines some more exotic constructs @lilypondfile[quote,ragged-right]{screech-boink.ly} -- cgit v1.2.3 From 5e816a4ee513135e33d2b067a9b0ecf98de8a7e0 Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 8 Jan 2007 09:02:54 +0100 Subject: Fix #227. Set instrumentName and shortInstrumentName to #'() in Lyrics --- ly/engraver-init.ly | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ly/engraver-init.ly b/ly/engraver-init.ly index 759ef96fa6..65094f01c5 100644 --- a/ly/engraver-init.ly +++ b/ly/engraver-init.ly @@ -364,7 +364,10 @@ staffs, with a bracket in front and spanning bar lines. " \description " Corresponds to a voice with lyrics. Handles the printing of a single line of lyrics. " - \name "Lyrics" + \name "Lyrics" + instrumentName = #'() + shortInstrumentName = #'() + \consists "Lyric_engraver" \consists "Extender_engraver" \consists "Hyphen_engraver" -- cgit v1.2.3 From 9c92b259689913faf1cb4f4aa4695899719fc6a0 Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 8 Jan 2007 09:17:13 +0100 Subject: Guesstimate stem end position for bar-stem optical correction. --- lily/staff-spacing.cc | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/lily/staff-spacing.cc b/lily/staff-spacing.cc index c7023db3aa..65c565617c 100644 --- a/lily/staff-spacing.cc +++ b/lily/staff-spacing.cc @@ -87,8 +87,15 @@ Staff_spacing::next_note_correction (Grob *me, Direction d = get_grob_direction (stem); if (Stem::is_normal_stem (stem) && d == DOWN) { - Real stem_start = Stem::head_positions (stem) [DOWN]; - Real stem_end = Stem::stem_end_position (stem); + + /* + can't look at stem-end-position, since that triggers + beam slope computations. + */ + Real stem_start = Stem::head_positions (stem) [d]; + Real stem_end = stem_start + + d * robust_scm2double (stem->get_property ("length"), 7); + Interval stem_posns (min (stem_start, stem_end), max (stem_end, stem_start)); -- cgit v1.2.3 From 7460765740db3ed400bedb9b1122fb18f03cb71e Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 8 Jan 2007 09:33:32 +0100 Subject: Revert moving columns_ into Spacing_options. Fixes core dumps. --- input/regression/spacing-bar-whole-measure.ly | 1 + lily/include/spacing-options.hh | 6 +++++- lily/include/spacing-spanner.hh | 4 ++-- lily/spacing-basic.cc | 1 - lily/spacing-determine-loose-columns.cc | 7 ++++--- lily/spacing-options.cc | 2 -- lily/spacing-spanner.cc | 24 ++++++++++++++---------- 7 files changed, 26 insertions(+), 19 deletions(-) diff --git a/input/regression/spacing-bar-whole-measure.ly b/input/regression/spacing-bar-whole-measure.ly index e2cb1d9f1d..f2bbb62cb3 100644 --- a/input/regression/spacing-bar-whole-measure.ly +++ b/input/regression/spacing-bar-whole-measure.ly @@ -17,5 +17,6 @@ s1 c2. c4 \time 3/4 + s2. c2. } diff --git a/lily/include/spacing-options.hh b/lily/include/spacing-options.hh index 1b5ee32db0..670f0e96f7 100644 --- a/lily/include/spacing-options.hh +++ b/lily/include/spacing-options.hh @@ -14,6 +14,11 @@ #include "rational.hh" #include "std-vector.hh" +/* + Various options for spacing. Usually inited from SpacingSpanner, but sometimes + from GraceSpacing. + */ + struct Spacing_options { bool packed_; @@ -23,7 +28,6 @@ struct Spacing_options Rational global_shortest_; Real increment_; Real shortest_duration_space_; - vector columns_; Spacing_options(); void init_from_grob (Grob *me); diff --git a/lily/include/spacing-spanner.hh b/lily/include/spacing-spanner.hh index 6723dfefbf..8a2d25eff0 100644 --- a/lily/include/spacing-spanner.hh +++ b/lily/include/spacing-spanner.hh @@ -26,10 +26,10 @@ private: static Real get_duration_space (Moment dur, Spacing_options const *, bool *); static Rational effective_shortest_duration (Grob *me, vector const &all); static void breakable_column_spacing (Grob *, Item *l, Item *r, Spacing_options const *); - static void prune_loose_columns (Grob *, Spacing_options *); + static void prune_loose_columns (Grob *, vector *cols, Spacing_options *); static void set_explicit_neighbor_columns (vector const &cols); static void set_implicit_neighbor_columns (vector const &cols); - static void generate_springs (Grob *me, Spacing_options const *); + static void generate_springs (Grob *me, vector const &cols, Spacing_options const *); static void musical_column_spacing (Grob *, Item *, Item *, Spacing_options const *); static bool fills_measure (Grob *, Item *, Item *); public: diff --git a/lily/spacing-basic.cc b/lily/spacing-basic.cc index 835801d94a..fe9fd7c144 100644 --- a/lily/spacing-basic.cc +++ b/lily/spacing-basic.cc @@ -164,7 +164,6 @@ Spacing_spanner::note_spacing (Grob *me, Grob *lc, Grob *rc, { Spacing_options grace_opts; grace_opts.init_from_grob (grace_spacing); - bool bla; dist = grace_opts.get_duration_space (delta_t.grace_part_, &bla); } diff --git a/lily/spacing-determine-loose-columns.cc b/lily/spacing-determine-loose-columns.cc index 11e9caa18d..4657afee31 100644 --- a/lily/spacing-determine-loose-columns.cc +++ b/lily/spacing-determine-loose-columns.cc @@ -194,9 +194,10 @@ Spacing_spanner::set_distances_for_loose_col (Grob *me, Grob *c, between. */ void -Spacing_spanner::prune_loose_columns (Grob *me, Spacing_options *options) - { - vector *cols = &options->columns_; +Spacing_spanner::prune_loose_columns (Grob *me, + vector *cols, + Spacing_options *options) +{ vector newcols; for (vsize i = 0; i < cols->size (); i++) diff --git a/lily/spacing-options.cc b/lily/spacing-options.cc index 9a73ad6d7f..c4e40a8837 100644 --- a/lily/spacing-options.cc +++ b/lily/spacing-options.cc @@ -35,8 +35,6 @@ Spacing_options::init_from_grob (Grob *me) global_shortest_ = shortest_dur.main_part_; else global_shortest_ = shortest_dur.grace_part_; - - columns_ = Spacing_spanner::get_columns (me); // ugh. } Spacing_options::Spacing_options () diff --git a/lily/spacing-spanner.cc b/lily/spacing-spanner.cc index fb91f0b010..ab623f29e8 100644 --- a/lily/spacing-spanner.cc +++ b/lily/spacing-spanner.cc @@ -54,12 +54,12 @@ Spacing_spanner::set_springs (SCM smob) */ Spacing_options options; options.init_from_grob (me); + vector cols = Spacing_spanner::get_columns (me); + set_explicit_neighbor_columns (cols); - set_explicit_neighbor_columns (options.columns_); - - prune_loose_columns (me, &options); - set_implicit_neighbor_columns (options.columns_); - generate_springs (me, &options); + prune_loose_columns (me, &cols, &options); + set_implicit_neighbor_columns (cols); + generate_springs (me, cols, &options); return SCM_UNSPECIFIED; } @@ -216,13 +216,14 @@ Spacing_spanner::generate_pair_spacing (Grob *me, void Spacing_spanner::generate_springs (Grob *me, + vector const &cols, Spacing_options const *options) { Paper_column *prev = 0; - for (vsize i = 0; i < options->columns_.size (); i++) + for (vsize i = 0; i < cols.size (); i++) { - Paper_column *col = dynamic_cast (options->columns_[i]); - Paper_column *next = (i < options->columns_.size()-1) ? dynamic_cast (options->columns_[i+1]) : 0; + Paper_column *col = dynamic_cast (cols[i]); + Paper_column *next = (i < cols.size()-1) ? dynamic_cast (cols[i+1]) : 0; if (i > 0) generate_pair_spacing (me, prev, col, next, options); @@ -396,12 +397,14 @@ Spacing_spanner::musical_column_spacing (Grob *me, bool Spacing_spanner::fills_measure (Grob *me, Item *l, Item *r) { - return false; System *sys = get_root_system (me); Grob *next = sys->column (r->get_column()->get_rank () + 1); if (!next) return false; + if (Paper_column::is_musical (next)) + return false; + Moment dt = Paper_column::when_mom (next) - Paper_column::when_mom (r); @@ -493,7 +496,8 @@ Spacing_spanner::breakable_column_spacing (Grob *me, Item *l, Item *r, } - if (fills_measure (me, l, r)) + if (Paper_column::is_musical (r) + && fills_measure (me, l, r)) { compound_space += 1.0; } -- cgit v1.2.3 From cc0b81cdaeb5ba3b5ef6d5faf473d357b6636ff7 Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 8 Jan 2007 09:33:48 +0100 Subject: attach GraceSpacing like a normal spanner. --- lily/grace-spacing-engraver.cc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lily/grace-spacing-engraver.cc b/lily/grace-spacing-engraver.cc index 0e1f8740c5..4249084e48 100644 --- a/lily/grace-spacing-engraver.cc +++ b/lily/grace-spacing-engraver.cc @@ -51,6 +51,11 @@ Grace_spacing_engraver::process_music () column); column->set_object ("grace-spacing", grace_spacing_->self_scm ()); + + if (!grace_spacing_->get_bound (LEFT)) + grace_spacing_->set_bound (LEFT, column); + else + grace_spacing_->set_bound (RIGHT, column); } } -- cgit v1.2.3 From 0bdd29149c655aa7da952269a5cbd80825d2f16f Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 8 Jan 2007 09:40:27 +0100 Subject: Thinko in dots/flag collision code. --- scm/define-markup-commands.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scm/define-markup-commands.scm b/scm/define-markup-commands.scm index 8f5728c31b..aef9e3aa28 100644 --- a/scm/define-markup-commands.scm +++ b/scm/define-markup-commands.scm @@ -1273,7 +1273,7 @@ figured bass notation" (number->string log))) (cons (+ (car attach-off) (/ stem-thickness 2)) stemy))))) - (if (and flaggl (> dir 0)) + (if (and dots flaggl (> dir 0)) (set! dots (ly:stencil-translate-axis dots 0.35 X))) (if flaggl (set! stem-glyph (ly:stencil-add flaggl stem-glyph))) -- cgit v1.2.3 From 3742d013106d0130a0a8d0b95bc1731cf56a4393 Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 8 Jan 2007 11:01:45 +0100 Subject: clarify stem-bar example. --- input/regression/spacing-stem-bar.ly | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/input/regression/spacing-stem-bar.ly b/input/regression/spacing-stem-bar.ly index 87e14f00c6..3288f3cef5 100644 --- a/input/regression/spacing-stem-bar.ly +++ b/input/regression/spacing-stem-bar.ly @@ -10,19 +10,17 @@ space. This is an optical correction similar to juxtaposed stems. \layout { ragged-right = ##t} + \relative e' { + \override Score.PaperColumn #'layer = #1 + \override Score.PaperColumn #'stencil = #ly:paper-column::print - %%\override Staff.StaffSpacing #'stem-spacing-correction = #0.5 - %%\override Staff.NoteSpacing #'stem-spacing-correction = #0.5 - - \time 3/8 + + \time 2/8 \stemUp - e8 e e - f f f - a a a - c c c - e e e + e8[ e] + e'[ e] } -- cgit v1.2.3 From 061aea1aaa27b8ed734564016ad3dda8ec3d53db Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 8 Jan 2007 11:02:10 +0100 Subject: bugfix: don't compare positions with staff space in stem-bar adjustment. --- lily/note-spacing.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/lily/note-spacing.cc b/lily/note-spacing.cc index f601a1054b..6c38736e8d 100644 --- a/lily/note-spacing.cc +++ b/lily/note-spacing.cc @@ -355,6 +355,7 @@ Note_spacing::stem_dir_correction (Grob *me, Item *rcolumn, { stem_dirs[RIGHT] = -stem_dirs[LEFT]; stem_posns[RIGHT] = bar_yextent; + stem_posns[RIGHT] *= 2; } if (correct_stem_dirs && stem_dirs[LEFT] * stem_dirs[RIGHT] == -1) -- cgit v1.2.3 From 2582617c399acb1d19d4835f63006bcdb39bcbdc Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 8 Jan 2007 11:02:27 +0100 Subject: Paper_column::print: Only display constraints which are used --- lily/paper-column.cc | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lily/paper-column.cc b/lily/paper-column.cc index e42a3417e2..0efdb01d2d 100644 --- a/lily/paper-column.cc +++ b/lily/paper-column.cc @@ -176,7 +176,10 @@ Paper_column::print (SCM p) scm_is_pair (s); s = scm_cdr (s)) { Spring_smob *sp = unsmob_spring (scm_car (s)); + if (!sp->other_->get_system ()) + continue; + j++; Real y = -j * 1 -3; vector pts; pts.push_back (Offset (0, y)); @@ -201,8 +204,13 @@ Paper_column::print (SCM p) scm_is_pair (s); s = scm_cdr (s)) { Real dist = scm_to_double (scm_cdar (s)); + Grob *other = unsmob_grob (scm_caar (s)); + if (!other || other->get_system () != me->get_system ()) + continue; - Real y = -j * 0.1 -3.5; + j++; + + Real y = -j * 1.0 -3.5; vector pts; pts.push_back (Offset (0, y)); -- cgit v1.2.3 From 073808f400943b2530ae63955f3293bc526e2dbc Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 8 Jan 2007 11:03:00 +0100 Subject: Don't mix positions and staff spaces in bar-stem spacing. --- lily/staff-spacing.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lily/staff-spacing.cc b/lily/staff-spacing.cc index 65c565617c..1cbfee096a 100644 --- a/lily/staff-spacing.cc +++ b/lily/staff-spacing.cc @@ -42,6 +42,9 @@ Staff_spacing::next_note_correction (Grob *me, Item *col = dynamic_cast (g)->get_column (); Real left_stickout_correction = max (0., (- g->extent (col, X_AXIS)[LEFT])); + /* staff space -> positions */ + bar_size *= 2; + /* Duh. If this gets out of hand, we should invent something more generic. */ @@ -110,7 +113,7 @@ Staff_spacing::next_note_correction (Grob *me, Real correction = optical_corr + left_stickout_correction; if (correction) { - wish_count ++; + (*wish_count) ++; /* This minute adjustments don't make sense for widely spaced scores. -- cgit v1.2.3 From e07c4f38ab5ccd77c67a60f222267bea51e100eb Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 8 Jan 2007 11:03:08 +0100 Subject: remove spacing-interface. --- lily/spacing-spanner.cc | 21 ++++++++++----------- scm/define-grobs.scm | 17 ++++++++--------- 2 files changed, 18 insertions(+), 20 deletions(-) diff --git a/lily/spacing-spanner.cc b/lily/spacing-spanner.cc index ab623f29e8..515e6e081a 100644 --- a/lily/spacing-spanner.cc +++ b/lily/spacing-spanner.cc @@ -394,21 +394,25 @@ Spacing_spanner::musical_column_spacing (Grob *me, Spaceable_grob::add_spring (left_col, right_col, distance, inverse_strength); } +/* + Check if COL fills the whole measure. + */ bool -Spacing_spanner::fills_measure (Grob *me, Item *l, Item *r) +Spacing_spanner::fills_measure (Grob *me, Item *left, Item *col) { System *sys = get_root_system (me); - Grob *next = sys->column (r->get_column()->get_rank () + 1); + Grob *next = sys->column (col->get_column()->get_rank () + 1); if (!next) return false; - if (Paper_column::is_musical (next)) + if (Paper_column::is_musical (next) + || !Paper_column::is_used (next)) return false; Moment dt = - Paper_column::when_mom (next) - Paper_column::when_mom (r); + Paper_column::when_mom (next) - Paper_column::when_mom (col); - Moment *len = unsmob_moment (l->get_property ("measure-length")); + Moment *len = unsmob_moment (left->get_property ("measure-length")); if (!len) return false; @@ -497,6 +501,7 @@ Spacing_spanner::breakable_column_spacing (Grob *me, Item *l, Item *r, } if (Paper_column::is_musical (r) + && l->break_status_dir () == CENTER && fills_measure (me, l, r)) { compound_space += 1.0; @@ -545,9 +550,3 @@ ADD_INTERFACE (Spacing_spanner, ); -ADD_INTERFACE (Spacing_interface, - "Something to do with line breaking and spacing. " - "Kill this one after determining line breaks.", - - ""); - diff --git a/scm/define-grobs.scm b/scm/define-grobs.scm index 0c76b85e5c..8dd4bb6348 100644 --- a/scm/define-grobs.scm +++ b/scm/define-grobs.scm @@ -708,7 +708,7 @@ (shortest-duration-space . 1.6) (meta . ((class . Spanner) (interfaces . (grace-spacing-interface - spacing-interface + spacing-options-interface spanner-interface)))))) (GridPoint @@ -949,7 +949,7 @@ (X-extent . #f) (meta . ((class . Spanner) (interfaces . (spanner-interface - lyric-hyphen-interface spacing-interface)) + lyric-hyphen-interface )) )) )) @@ -988,7 +988,7 @@ . ( (neutral-direction . ,DOWN) (meta . ((class . Item) - (interfaces . (melody-spanner-interface spacing-interface)))))) + (interfaces . (melody-spanner-interface )))))) (MensuralLigature . ( (thickness . 1.4) @@ -1136,7 +1136,7 @@ ;; If you ever change this back, please document! --hwn (knee-spacing-correction . 1.0) (meta . ((class . Item) - (interfaces . (spacing-interface + (interfaces . ( note-spacing-interface)))))) (NoteName @@ -1404,7 +1404,7 @@ (Y-extent . ,ly:axis-group-interface::height) (skylines . ,ly:separation-item::calc-skylines) (meta . ((class . Item) - (interfaces . (spacing-interface + (interfaces . ( separation-item-interface)))))) (SeparatingGroupSpanner @@ -1412,7 +1412,7 @@ (springs-and-rods . ,ly:separating-group-spanner::set-spacing-rods) (meta . ((class . Spanner) (interfaces . (only-prebreak-interface - spacing-interface + separating-group-spanner-interface)))))) (Slur @@ -1470,7 +1470,7 @@ (base-shortest-duration . ,(ly:make-moment 3 16)) (meta . ((class . Spanner) - (interfaces . (spacing-interface + (interfaces . ( spacing-options-interface spacing-spanner-interface)))))) @@ -1520,8 +1520,7 @@ (non-musical . #t) (stem-spacing-correction . 0.4) (meta . ((class . Item) - (interfaces . (spacing-interface - staff-spacing-interface)))))) + (interfaces . (staff-spacing-interface)))))) (StaffSymbol -- cgit v1.2.3 From 9332d5f46dd4a1641cf3fa3ac19f2a29cf0bba1a Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 8 Jan 2007 11:03:32 +0100 Subject: input/regression/part-combine-text.ly: Remove text overlap --- input/regression/part-combine-text.ly | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/input/regression/part-combine-text.ly b/input/regression/part-combine-text.ly index 0922a8d27a..bcbd3aa8eb 100644 --- a/input/regression/part-combine-text.ly +++ b/input/regression/part-combine-text.ly @@ -15,7 +15,8 @@ texts accordingly. vone = \relative a' { R1 a2 r4 r a a a a } vtwo = \relative a' { R1 f4 f4 f4 f f f a a } -comm = { s1 s2 s4_"expect: solo 2" s4 s2 s4_"expect: a2" s4 } +comm = { s1 s2 s4_\markup { \small "expect: solo 2" } + s4 s2 s4_\markup { \small "expect: a2" } s4 } \new Staff << \partcombine \vone \vtwo \comm -- cgit v1.2.3 From 777524ec7f5a620144e891f741f4bd854d559458 Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 8 Jan 2007 11:10:14 +0100 Subject: Don't test whole-bar spacing in spacing-bar-stem.ly as well. --- input/regression/spacing-bar-stem.ly | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/input/regression/spacing-bar-stem.ly b/input/regression/spacing-bar-stem.ly index 3bcba2caca..59b8fa956a 100644 --- a/input/regression/spacing-bar-stem.ly +++ b/input/regression/spacing-bar-stem.ly @@ -19,9 +19,9 @@ to 1.5 staff space." \override Score.NonMusicalPaperColumn #'stencil = #ly:paper-column::print \override Score.NonMusicalPaperColumn #'layer = #2 - \time 1/4 + \time 2/4 \stemDown - s4 - e4 - e,4 + s2 + e4 s4 + e,4 s4 } -- cgit v1.2.3