]> git.donarmstrong.com Git - lilypond.git/commitdiff
Merge branch 'master' of ssh://jomand@git.sv.gnu.org/srv/git/lilypond
authorJohn Mandereau <john.mandereau@gmail.com>
Sun, 11 May 2008 13:18:27 +0000 (15:18 +0200)
committerJohn Mandereau <john.mandereau@gmail.com>
Sun, 11 May 2008 13:18:27 +0000 (15:18 +0200)
* 'master' of ssh://jomand@git.sv.gnu.org/srv/git/lilypond:
  More `about' stuff, plus THANKS and TODO lists.
  Links for `about the docs' stuff.
  Add links to About section.
  Begin reworking `About the documentation'.
  Update from Francisco with modifications by me.

Documentation/index.html.in
Documentation/user/introduction.itely
Documentation/user/lilypond-learning.tely
Documentation/user/lilypond-program.tely
Documentation/user/lilypond.tely
Documentation/user/music-glossary.tely
Documentation/user/rhythms.itely
Documentation/user/simultaneous.itely
Documentation/user/spacing.itely
THANKS

index 82f04b82b945c7ed835be2a513db310c0936239d..fd431f3037ac43201ca47dd497ca79bbda1a8e22 100644 (file)
@@ -101,7 +101,7 @@ href="user/lilypond-program/index.html">Application Usage (AU)</a>
 in <a class="title" href="user/lilypond-program.pdf">PDF</a>)
            <br>(how to install and run the program)
 
-<li><a class="title" href="../input/lsr/lilypond-snippets/index.html">Snippets</a>
+<li><a class="title"href="../input/lsr/lilypond-snippets/index.html">Snippets List (SL)</a>
 (in <a class="title" href="../input/lsr/lilypond-snippets-big-page.html">one big page</a>,
 in <a class="title" href="user/lilypond-snippets.pdf">PDF</a>)
      <br>(Short tricks, tips, and examples)
index b6a3320400b8f9723292b225998a779087ddf7d2..a079f30e2743dc15d2359a3a93b393b107f05344 100644 (file)
 @node Introduction
 @chapter Introduction
 
+This chapter introduces readers to LilyPond and the
+documentation.
+
+@menu
+* Background::                  
+* About the documentation::     
+@end menu
+
+
+@node Background
+@section Background
+
+This section covers the overall goals and architecture of
+LilyPond.
 
 @menu
 * Engraving::                   
 * What symbols to engrave?::    
 * Music representation::        
 * Example applications::        
-* About this manual::           
 @end menu
 
 
 @node Engraving
-@section Engraving
+@unnumberedsubsec Engraving
 
 The art of music typography is called @emph{(plate) engraving}.  The
 term derives from the traditional process of music printing.  Just a
@@ -225,7 +238,7 @@ love to play from.
 
 
 @node Automated engraving
-@section Automated engraving
+@unnumberedsubsec Automated engraving
 
 How do we go about implementing typography?  If craftsmen need over
 ten years to become true masters, how could we simple hackers ever
@@ -363,7 +376,7 @@ music fragment.
 
 
 @node What symbols to engrave?
-@section What symbols to engrave?
+@unnumberedsubsec What symbols to engrave?
 
 @cindex engraving
 @cindex typography
@@ -554,7 +567,7 @@ Internals Reference: @rinternals{Contexts}.
 @end lilypond
 
 @node Music representation
-@section Music representation
+@unnumberedsubsec Music representation
 
 Ideally, the input format for any high-level formatting system is an
 abstract description of the content.  In this case, that would be the
@@ -649,7 +662,7 @@ and representation take up less than 10% of the source code.
 
 
 @node Example applications
-@section Example applications
+@unnumberedsubsec Example applications
 
 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
@@ -694,151 +707,186 @@ in the resulting PDF or HTML output files.  This makes it easy
 to mix music and text in documents.
 
 
+@node About the documentation
+@section About the documentation
+
+FIXME: still needs some work.
+
+This section explains the different manuals:
+
+@itemize
+@item
+Learning Manual (LM): this introduces LilyPond, giving in-depth
+explanations of how to create notation.
+
+@item
+Music Glossary (MG): this explains musical terms and gives
+translations of terms in other languages.
+
+@item
+Notation Reference (NR): this is the main portion of the
+documentation.  It provides detailed information about creating
+notation.  This book assumes that the reader knows basic material
+covered in the LM and is familiar with the English musical terms
+presented in the MG.
+
+@item
+Application Usage (AU): this discusses the actual programs and
+operation system-specific issues.
+
+@item
+Snippet List (SL): this is a collection of short LilyPond examples
+(@qq{snippets}).
+
+@item
+Internals Reference (IR): this gives information about LilyPond
+internal programming information, which is required for
+constructing tweaks.
 
-@node About this manual
-@section About this manual
+@item
+Other documentation: there are a few other portions of the
+documentation, such as News items and the mailist archives.
 
-FIXME: needs almost-complete rewrite.  -gp
+@end itemize
 
-There are four manuals about LilyPond: the @emph{Learning Manual},
-the @emph{Notation Reference}, the @emph{Application Usage}, and the
-@emph{Internals Reference}.
+@menu
+* About the Learning Manual (LM)::  
+* About the Music Glossary (MG)::  
+* About the Notation Reference (NR)::  
+* About the Application Usage (AU)::  
+* About the Snippet List (SL)::  
+* About the Internals Reference (IR)::  
+* Other documentation::         
+@end menu
 
 
-@subheading Learning Manual (LM)
+@node About the Learning Manual (LM)
+@unnumberedsubsec About the Learning Manual (LM)
 
-This book explains how to begin learning LilyPond, as well as explaining
-some key concepts in easy terms.  It is recommended to read these
-chapters in a linear fashion.
+This book explains how to begin learning LilyPond, as well as
+explaining some key concepts in easy terms.  It is recommended to
+read these chapters in a linear fashion.
 
 @itemize
 
 @item
-@ifhtml
-The
-@end ifhtml
-@emph{@ref{Tutorial}},
-gives a gentle introduction to typesetting music.  First time
-users should start here.
+@ref{Tutorial}: gives a gentle introduction to typesetting music.
+First time users should start here.
 
 @item
-@emph{@ref{Fundamental concepts}},
-explains some general concepts about the LilyPond file format.  If
-you are not certain where to place a command, read this chapter!
+@ref{Fundamental concepts}: explains some general concepts about
+the LilyPond file format.  If you are not certain where to place a
+command, read this chapter!
 
 @item
-@emph{@ref{Working on LilyPond projects}},
-discusses practical uses of LilyPond and how to avoid some common
-problems.
+@ref{Working on LilyPond projects}: discusses practical uses of
+LilyPond and how to avoid some common problems.
 
 @item
-@emph{@ref{Tweaking output}},
-shows how to change the default engraving that LilyPond
-produces.
+@ref{Tweaking output}: shows how to change the default engraving
+that LilyPond produces.
 
 @end itemize
 
 
-@subheading Notation Reference (NR)
+@node About the Music Glossary (MG)
+@unnumberedsubsec About the Music Glossary (MG)
+
+@cindex idiom
+@cindex jargon
+@cindex terminology
+@cindex foreign languages
+@cindex language
 
-This book explains all the LilyPond commands which produce notation.  It
-assumes that readers are familiar with the concepts in the Learning
-manual.
+@ref{Top,Music glossary,,music-glossary}:
+this explains musical terms, and includes translations to various
+languages.  If you are not familiar with music notation or music
+terminology (especially if you are a non-native English speaker),
+it is highly advisable to consult the glossary.
 
-All of this needs to be rewritten after GDP, anyway.
 
-@ignore
+@node About the Notation Reference (NR)
+@unnumberedsubsec About the Notation Reference (NR)
+
+This book explains all the LilyPond commands which produce
+notation.  It assumes that readers are familiar with the concepts
+in the Learning manual.
 
 @itemize
 
 @item
-@emph{@r ef{Basic notation}},
+@ruser{Basic notation}:
 discusses topics grouped by notation construct.  This section gives
 details about basic notation that will be useful in almost any
 notation project.
 
 @item
-@emph{@r ef{Instrument-specific notation}},
+@ruser{Specialist notation}:
 discusses topics grouped by notation construct.  This section gives
 details about special notation that will only be useful for particular
 instrument (or vocal) groups.
 
 @item
-@emph{@r ef{Advanced notation}},
-discusses topics grouped by notation construct.  This section gives
-details about complicated or unusual notation.
-
-@item
-@emph{@r ef{Changing defaults}},
-explains how to fine tune layout.
+@ruser{Input syntax}:
 
 @item
-@emph{@r ef{Non-musical notation}},
-discusses non-musical output such as titles, multiple movements,
-and how to select which MIDI instruments to use.
+@ruser{Non-musical notation}:
 
 @item
-@emph{@r ef{Spacing issues}},
+@ruser{Spacing issues}:
 discusses issues which affect the global output, such as selecting
 paper size or specifying page breaks.
 
 @item
-@emph{@r ef{Interfaces for programmers}},
-explains how to create music functions.
+@ruser{Changing defaults}:
 
-@end itemize
+@item
+@ruser{Interfaces for programmers}:
+explains how to create music functions with scheme.
 
+@end itemize
 
-@subsubheading Appendices
 
-This book contains useful reference charts.
+The NR also contains appendices with useful reference charts.
 
 @itemize
 @item
-@ifhtml
-The
-@end ifhtml
-@emph{@r ef{Literature list}},
-contains a set of useful reference books for those who wish to know
-more on notation and engraving.
+@ruser{Literature list}:
+contains a set of useful reference books for those who wish to
+know more on notation and engraving.
 
 @item
-The
-@emph{@r ef{Scheme tutorial}},
+@ruser{Scheme tutorial}:
 presents a short introduction to Scheme, the programming
 language that music functions use.
 
 @item
-@emph{@r ef{Notation manual tables}},
-are a set of tables showing the chord names, MIDI instruments,
-list of color names, and the Feta font.
+@ruser{Notation manual tables}:
+are a set of tables showing the chord names, MIDI instruments, a
+list of color names, and the Feta font.
 
 @item
-@emph{@r ef{Templates}},
+@ruser{Templates}:
 of LilyPond pieces.  Just cut and paste a
 template into a file, add notes, and you're done!
 
 @item
-The
-@emph{@r ef{Cheat sheet}},
+@ruser{Cheat sheet}:
 is a handy reference of the most common LilyPond commands.
 
 @item
-The
-@emph{@r ef{LilyPond command index}},
+@ruser{LilyPond command index}:
 is an index of all LilyPond @code{\commands}.
 
 @item
-The
-@emph{@r ef{LilyPond index}},
+@ruser{LilyPond index}:
 is a complete index.
 
 @end itemize
 
-@end ignore
-
 
-@subheading Program usage
+@node About the Application Usage (AU)
+@unnumberedsubsec About the Application Usage (AU)
 
 This book explains how to execute the program and how to integrate
 LilyPond notation with other programs.
@@ -846,27 +894,27 @@ LilyPond notation with other programs.
 @itemize
 
 @item
-@emph{@rprogram{Install}},
+@rprogram{Install}:
 explains how to install LilyPond (including compilation if desired).
 
 @item
-@emph{@rprogram{Setup}},
+@rprogram{Setup}:
 describes how to configure your computer for optimum LilyPond usage,
 such as using special environments for certain text editors.
 
 @item
-@emph{@rprogram{Running LilyPond}},
+@rprogram{Running LilyPond}:
 shows how to run LilyPond and its helper programs.  In addition, this
 section explains how to upgrade input files from previous versions of
 LilyPond.
 
 @item
-@emph{@rprogram{LilyPond-book}},
-explains the details behind creating
-documents with in-line music examples, like this manual.
+@rprogram{LilyPond-book}:
+explains the details behind creating documents with in-line music
+examples, like this manual.
 
 @item
-@emph{@rprogram{Converting from other formats}},
+@rprogram{Converting from other formats}:
 explains how to run the conversion programs.  These programs are
 supplied with the LilyPond package, and convert a variety of music
 formats to the @code{.ly} format.
@@ -874,34 +922,26 @@ formats to the @code{.ly} format.
 @end itemize
 
 
+@node About the Snippet List (SL)
+@unnumberedsubsec About the Snippet List (SL)
 
-@subsubheading Other information
+@cindex snippets
+@cindex LSR
 
-There are a number of other places which may be very valuable.
+The Snippet List shows a selected set of LilyPond snippets from the
+@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}
+(LSR).  It is in the public domain.
 
-@itemize
-@cindex idiom
-@cindex jargon
-@cindex terminology
-@cindex foreign languages
-@cindex language
-@item
-@ifnottex
-The @ref{Top,Music glossary,,music-glossary}, explains musical terms and
-includes translations to various languages.  It is also available in
-PDF.
-@end ifnottex
-@iftex
-The music glossary explains musical terms, and includes translations
-to various languages.  It is a separate document, available in HTML
-and PDF.
-@end iftex
-If you are not familiar with music notation or music terminology
-(especially if you are a non-native English speaker), it is highly
-advisable to consult the glossary.
+Please note that this document is not an exact subset of LSR.  LSR
+is running a stable LilyPond version, so any snippet which
+demonstrates new features of a development version must be added
+separately.  These are stored in @file{input/new/} in the LilyPond
+source tree.
 
-@cindex snippets
-@cindex LSR
+The list of snippets for each subsection of the Notation Reference
+(NR) are also linked from the @strong{See also} portion.
+
+@itemize
 @item
 The
 @ifhtml
@@ -914,8 +954,14 @@ are a great collection of short examples which demonstrate tricks, tips,
 and special features of LilyPond.  Most of these snippets can also be
 found in the @uref{http://lsr.dsi.unimi.it/,LilyPond Snippet
 Repository}.  This website also has a searchable LilyPond manual.
+@end itemize
+
+
+@node About the Internals Reference (IR)
+@unnumberedsubsec About the Internals Reference (IR)
 
 
+@itemize
 @item
 The
 @iftex
@@ -939,6 +985,14 @@ HTML document, these subsections have clickable links.
 @end itemize
 
 
+@node Other documentation
+@unnumberedsubsec Other documentation
+
+FIXME: most of this should go higher up.  Discuss News, mailist
+archives, ...?
+
+There are a number of other places which may be very valuable.
+
 Once you are an experienced user, you can use the manual as reference:
 there is an extensive index@footnote{If you are looking for something,
 and you cannot find it in the manual, that is considered a bug.  In
@@ -984,3 +1038,5 @@ files and HTML from the web site, which can be found at
 @uref{http://@/www@/.lilypond@/.org/}.
 
 
+
+
index ff254024fcf38e5cd9020c0664116789d9cb7718..8d0bd1eb348db766c5108a06a4332e280d619a76 100644 (file)
@@ -101,7 +101,9 @@ Free Documentation License''.
 @node Top
 @top GNU LilyPond --- learning manual
 
-This is the learning manual for GNU LilyPond version @version{}.
+This is the Learning Manual (LM) for GNU LilyPond version @version{}.
+For more information about how this fits with the other
+documentation, see @ref{About the documentation}.
 
 @cindex web site
 @cindex URL
index 1ddba147e493f6e417faa89b99260b704bf6d2cf..86beebdd4990f19a33675c48c616e1e470036d81 100644 (file)
@@ -102,7 +102,9 @@ Free Documentation License''.
 @top GNU LilyPond --- program usage
 @c HJJ: Info needs `@top', which is a synonym for `@unnumbered' in TeX.
 
-This is the program usage manual for GNU LilyPond version @version{}.
+This is the Application Usage (AU) manual for GNU LilyPond version @version{}.
+For more information about how this fits with the other
+documentation, see @rlearning{About the documentation}.
 
 @cindex web site
 @cindex URL
index 92f802ae9629916227a701526c77a06ed153a226..e18ae8371d68156f07cb273098a34b05d4c0a2fd 100644 (file)
@@ -136,7 +136,9 @@ Free Documentation License''.
 @top GNU LilyPond --- The music typesetter
 @c HJJ: Info needs `@top', which is a synonym for `@unnumbered' in TeX.
 
-This is the Notation Reference for GNU LilyPond version @version{}.
+This is the Notation Reference (NR) for GNU LilyPond version @version{}.
+For more information about how this fits with the other
+documentation, see @rlearning{About the documentation}.
 
 @cindex web site
 @cindex URL
index aa072e7e7d77d4fbd260bf2f250f94bbecf56a97..49d3723559b913a95ffdcc8da65a0a96b933f795 100644 (file)
@@ -1,10 +1,11 @@
 \input texinfo @c -*- coding: utf-8; mode: texinfo; -*-
 @setfilename music-glosssary.info
 @settitle Music Glossary
-
 @documentencoding UTF-8
 @documentlanguage en
 
+@include macros.itexi
+
 @afourpaper
 
 @c see lilypond.tely for info installation note
@@ -107,7 +108,10 @@ Copyright 1999--2007 by the authors
 @c @evenheading @thispage @| @|
 @c @oddheading @| @| @thispage @|
 
-@include macros.itexi
+This is the Music Glossary (MG) for GNU LilyPond version @version{}.
+For more information about how this fits with the other
+documentation, see @rlearning{About the documentation}.
+
 
 @c arrowref
 @macro aref{word}
index b20c93d8ac799bfb06de34441dae082bbd1a6112..83ecb95d70ea09b8afa46593693fb59285c49fd7 100644 (file)
@@ -8,6 +8,33 @@
 
 @c \version "2.11.38"
 
+@ignore
+GDP TODO list
+
+\compressMusic -> \scaleDurations.
+approved by Han-Wen; just needs somebody to kick up a fuss about
+it.
+
+1.2.3.1 Time signature
+Needs an example of beatLength, which is broken (see my recent
+mail
+to -bug).  What to do?  For now I've left a paragraph of text
+which really
+needs to be inserted with an example in a snippet.
+
+1.2.3.4 Polymetric notation
+Quite extensive changes. Could you please check through.  Divided
+into three
+sections.  Necessarily uses tweaks.  I've also left an @lsr under
+@seealso
+Snippets - is this permitted or is @lsr now verboten?  This
+snippet is too
+long to include, but seems relevant.
+A snippet "grouping beats" hasn't yet appeared (only sent to vv a
+couple of
+days ago).  Text left in Snippets: with TODO.
+@end ignore
+
 @node Rhythms
 @section Rhythms
 
index 399e86bd43521bfa0598bc1882d0770dae064d64..5df845313a436a23ceb6d6a325367a6ede76a73d 100644 (file)
@@ -444,10 +444,16 @@ content of alternate measures from the expression become the value of
 the respective variables, so you can use them afterwards to print the
 music.
 
+@warning{Bar checks @code{|} must be used, and the measures must
+be of the same length.}
+
 @lilypond[quote,fragment,verbatim]
 \parallelMusic #'(voiceA voiceB) {
+  % Bar 1
   r8 g'16[ c''] e''[ g' c'' e''] r8 g'16[ c''] e''[ g' c'' e''] |
   c'2                               c'2                         |
+
+  % Bar 2
   r8 a'16[ d''] f''[ a' d'' f''] r8 a'16[ d''] f''[ a' d'' f''] |
   c'2                               c'2                         |
 }
@@ -457,49 +463,74 @@ music.
 >>
 @end lilypond
 
+Relative mode may be used.  Note that the @code{\relative} command
+is not used inside @code{\parallelMusic} itself.  The notes are
+relative to the preceding note in the voice, not to the previous
+note in the input -- in other words, relative notes for
+@code{voiceA} ignore the notes in @code{voiceB}.
+
+@lilypond[quote,fragment,verbatim]
+\parallelMusic #'(voiceA voiceB) {
+  % Bar 1
+  r8 g16 c e g, c e r8 g,16 c e g, c e  |
+  c2                c                   |
+
+  % Bar 2
+  r8 a,16 d f a, d f r8 a,16 d f a, d f |
+  c2                 c                  |
+ }
+\new StaffGroup <<
+  \new Staff \relative c'' \voiceA
+  \new Staff \relative c'  \voiceB
+>>
+@end lilypond
+
 This works quite well for piano music.  This example maps four
 consecutive measures to four variables:
 
 @lilypond[quote,verbatim]
-global = { \key g \major  \time 2/4 }
-music = {
-  \parallelMusic #'(voiceA voiceB voiceC voiceD) {
-    % Bar 1 
-    a'8 b'      c'' d''   |
-    d'4         e'        |
-    c16 d e fis d e fis g |
-    a,4         a,4       |
-
-    % Bar 2
-    e''8 fis''  g'' a''   |
-    fis'4       g'        |
-    e16 fis g a fis g a b |
-    a,4         a,4       |
-
-    % Bar 3 ...
-  }
+global = {
+  \key g \major
+  \time 2/4
 }
 
-\score {      
-  \new PianoStaff <<
-    \new Staff {
-      \global
-      <<
-        \voiceA \\
-        \voiceB
-      >>
-    }
-    \new Staff {
-      \global \clef bass
-      <<
-        \voiceC \\
-        \voiceD
-      >>
-    }
-  >>
+\parallelMusic #'(voiceA voiceB voiceC voiceD) {
+  % Bar 1
+  a8    b     c   d     |
+  d4          e         |
+  c16 d e fis d e fis g |
+  a4          a         |
+
+  % Bar 2
+  e8      fis  g     a   |
+  fis4         g         |
+  e16 fis g  a fis g a b |
+  a4           a         |
+
+  % Bar 3 ...
+}   
+
+\score {   
+\new PianoStaff <<
+ \new Staff {
+   \global
+   <<
+     \relative c'' \voiceA \\
+     \relative c'  \voiceB
+   >>
+ }
+ \new Staff {
+   \global \clef bass
+   <<
+     \relative c \voiceC \\
+     \relative c \voiceD
+   >>
+ }
+>>
 }
 @end lilypond
 
+
 @seealso
 
 Learning Manual:
index 442082c5e3d06bc4a4e91d7e199f27e74af6765f..3cfd80ce65efbb730d3bec0cc4269a7994d785e0 100644 (file)
@@ -9,9 +9,44 @@
 
 @c \version "2.11.38"
 
-@c A menu is needed before every deeper *section nesting of @node's; run
-@c     M-x texinfo-all-menus-update
-@c to automatically fill in these menus before saving changes
+@ignore
+GDP TODO list
+
+Negative numbers are allowed:
+> Are you sure? The following works well
+> \paper{
+>   first-page-number = -2
+> }
+> and prints page number -1 on the second page, for example.
+
+
+- default paper size is A4.
+
+
+In 5.2.1 the @refbugs (line 495 in spacing.itely on master) it
+states:
+
+"@code{layout-set-staff-size} does not change the distance between
+the
+staff lines."
+
+Could we add a sentence:
+"Use instead the pair               fontSize = #@var{N}
+            \override StaffSymbol #'staff-space = #(magstep
+@var{N})
+inside the Staff context to change the size of the font and the
+distance between
+staff lines accordingly."
+
+Actually I found, that the @internalsref{StaffSymbol} at line 481
+sends to an uncomplete
+documentation. The property staff-space is not explained here. I
+thought Y-extent might be of
+help, but it is in turn explained by x-space which again is
+missing from the list. Who has the
+knowledge to fix this?
+
+@end ignore
 
 @node Spacing issues
 @chapter Spacing issues
diff --git a/THANKS b/THANKS
index ff5d8abb3b40c3eb368da15c6617431ffef46e1b..fbda83327dc909f5137d5ffaa29bc1ff313bb6aa 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -31,6 +31,8 @@ Jay Hamilton       - NR Rewriter
 Till Retting       - NR Rewriter
 Ralph Palmer       - NR Rewriter
 Patrick McCarty    - NR Rewriter
+Andrew Hawryluk    - NR Rewriter
+Jonathan Kulp      - NR Rewriter
 Kurt Kroon         - Glossary Updates
 Alard de Boer      - Formatting
 Michael Rasmussen  - Formatting