6 There are three parts to the documentation: the Learning Manual,
7 the Notation Reference, and the Technical Details.
9 * Learning Manual: long, chatty, friendly explanations go here.
10 This is aimed at users learning something for the first time --
11 not necessarily just learning lilypond notation, but also things
12 like learning how to deal with projects, tweaking, preparing parts
13 for orchestras, etc. Less formal language may be used here.
15 Users are encouraged to read the complete Learning Manual from
19 * Notation Reference: a (hopefully complete) description of
20 LilyPond input notation. Some material from here may be
21 duplicated in the Learning Manual (for teaching). The material is
22 presented in an approximate order of increasing difficulty, but
23 the goal is _not_ to provide a step-by-step learning environment.
24 For example, all material under "Pitches" should remain in that
25 section, even though microtonal accidentals may seem more advanced
26 than info about clefs or time signatures -- "Pitches" should be a
27 one-stop reference about the pitch portion of notes. This section
28 is written in formal technical writing style.
30 Users are not expected to read this manual from start to finish.
31 However, they should be familiar with the material in the Learning
32 Manual (particularly ``Fundamental Concepts''), so do not repeat
33 that material in this book.
36 * Program Usage: information about using the program lilypond with
37 other programs (lilypond-book, operating systems, GUIs,
38 convert-ly, etc). This section is written in formal technical
41 Users are not expected to read this manual from start to finish.
44 %%%%% SECTION ORGANIZATION
46 The order of headings inside documentation sections should be:
53 * You must include a @seealso with at least one link to @lsrdir{}.
55 * @commonprop and @refbugs are optional.
58 %%%%% LILYPOND FORMATTING
60 * Use two spaces for indentation in lilypond examples. (no tabs)
62 * If possible, only write one bar per line. The notes on each
63 line should be an independent line.
65 \override textscript #'padding = #3 c1^"hi"
67 \override textscript #'padding = #3
70 * LilyPond input should be produce via
71 @lilypond[verbatim,quote,ragged-right]
72 with `fragment' and `relative=2' optional.
74 Examples about page layout may alter the quote/ragged-right
75 options. Omitting `verbatim' is not allowed.
77 * Inspirational headwords are produced with
78 @lilypondfile[ragged-right,line-width=16\cm,staffsize=16,quote]
81 * Avoid long stretches of input code. Noone is going to read them
82 in print. Instead refer to an example input file with @lsr{}.
87 * Lines should be less than 72 characters long. (I personally
88 recommend writing with 66-char lines, but don't bother modifying
91 * Do not use tabs. They expand to nothing in DVI output.
93 * Do not use spaces at the beginning of a line (except in @example
94 or @verbatim environments), and do not use more than a single
95 space between words. `makeinfo' copies the input lines verbatim
96 without removing those spaces.
98 * Use two spaces after a period.
100 * Variables or numbers which consist of a single character
101 (probably followed by a punctuation mark) should be tied
102 properly, either to the previous or the next word. Example:
104 The variable@tie{}@var{a} ...
106 * To get consistent indentation in the DVI output it is better to
107 avoid the @verbatim environment. Use the @example environment
108 instead if possible, but without extraneous indentation. For
117 should be replaced with
125 where `@example' starts the line (without leading spaces).
127 * Do not compress the input vertically; this is, do not use
129 Beginning of logical unit
133 continuation of logical unit
137 Beginning of logical unit
144 continuation of logical unit
146 This makes it easier to avoid forgetting the `@noindent'.
148 * in @itemize use @item on a separate line like this:
156 Do not use @itemize @bullet.
158 * Use @q instead of `...' and @qq instead of ``...''. The latter macro
159 should be used with care since we use `...' as the default quoting
160 throughout the manual, except for things related to direct speech.
162 In most cases, you should use @code{} or @samp{} instead.
167 * Non-ASCII characters which are in utf-8 should be directly used;
168 this is, don't say `Ba@ss{}tuba' but `Baßtuba'. This ensures that
169 all such characters appear in all output formats.
171 * Don't use a @ref{link to another section} in the middle of a
172 sentence. It looks ok in HTML, moderately bad in PDF, and
173 utterly horrible in INFO. Instead, reword the sentence so that
174 users are encouraged to see @ref{link to another section}.
175 (at the end of the sentence)
177 * Do not forget to create @cindex entries for new sections of text.
178 Enter commands with @funindex, i.e.
179 @cindex pitches, writing in different octaves
181 do not bother with the @code{} (they are added automatically). These
182 items are added to both the command index and the unified index.
184 * Abbrevs in caps, e.g., HTML, DVI, MIDI, etc.
188 1. To introduce lists
189 2. When beginning a quote: "So, he said,..."
190 This usage is rarer. Americans often just use a comma.
191 3. When adding a defining example at the end of a sentence.
194 %%%%% TECHNICAL WRITING STYLE
196 * Do not refer to LilyPond in the text. The reader knows what the
197 manual is about. If you do, capitalization is LilyPond.
199 * If you explicitly refer to `lilypond' the program (or any other
200 command to be executed), say `@command{lilypond}'.
202 * Do not explicitly refer to the reader/user. There is no one
203 else besides the reader and the writer.
205 * Do not use abbreviations (don't, won't, etc.). If you do, use a
208 blabla blabla, i.e., blabla blabla
210 * Avoid fluff (``Notice that,'' ``as you can see,''
213 * The use of the word `illegal' is inappropriate in most cases.
214 Say `invalid' instead.
218 convert-ly -e --from=... --to=... --no-version *.itely
220 % to find the current version number,
221 grep "version \"" tutorial.itely
223 % (nobody ever remembers to update this file, so I've stopped
224 % trying to record it here)