From 7e315b1c9ba114a1542ddc743bf1f03b3bd1f1ee Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Sat, 8 Jun 2002 01:00:23 +0000 Subject: [PATCH] '' --- Documentation/user/introduction.itely | 171 +++++++++++++++++++++++++- Documentation/user/lilypond.tely | 8 +- Documentation/user/preface.itely | 32 ----- 3 files changed, 171 insertions(+), 40 deletions(-) diff --git a/Documentation/user/introduction.itely b/Documentation/user/introduction.itely index 71c630166e..ec60ddc318 100644 --- a/Documentation/user/introduction.itely +++ b/Documentation/user/introduction.itely @@ -1,14 +1,177 @@ - @node Introduction @chapter Introduction +LilyPond is a free program that produces high quality sheet music. + +The features that set LilyPond apart from other music printing +programs are + +@itemize +@item Freely available under terms of the GNU GPL +@item Carefully designed music font +@item Lots of music formatting knowledge +@item Sophisticated formatting functions +@item Output is configurable using Scheme +@item Highly modular design +@item Semantic input format +@item Input can be generated, inspected and modified via builtin Scheme + interpreter. +@item Runs on both Unix and MS Windows +@item Multiple output formats +@item Easily embed musical fragments in LaTeX, Texinfo and HTML documents. +@item Works as a compiler: edit input in your favorite text editor +@end itemize -@section +If you need to print out existing arrangements, composition, new +editions, or musical excercises, then LilyPond will suit you. +LilyPond is not interactive, and is probably not suited for creating +new compositions. +@menu +* Why LilyPond:: +* The Feta Font:: +* Engraving:: +* Semantic input format:: +* A programming approach:: +* About this manual:: +@end menu + +@node Why LilyPond @section Why LilyPond -@section Music typography +LilyPond originally started out as an interesting hobby +project. Intrigued by music notation we set out to write a program to +produce high-quality music printouts, with minimal user intervention. + +Engraving, the art of printing music is a very complex craftmanship, +that tries to make a typographically beautiful rendering of a piece of +music. The purpose of nicely engraved music is to ease the way music +is read. The typographical decisions have underlying logic, and to us +scientists, this begs the question: what is this logic, and can we +cast this logic into the more concrete form a computer program. + +LilyPond is our concrete answer to this question, but besides being an +interesting hobby project, it also allows people that don't know much +about notation and engraving to print fine sheet music. + +With LilyPond, we hope to give back a little to the Free Software +Community that gave us so much, and if possible, give people the +opportunity to publish sheet music with high quality layout. In our +utopic vision, some day LilyPond will help create more beautiful music. + +@node The Feta Font +@section The Feta Font + + +Most of the rules concerning music symbols have not been explicitly +laid down, so we have imitated the looks of symbols in beautiful hand +engraved music. The starting point was to have a strong, bold look, +with rounded symbol shapes, just like traditional engraving. + +@iftex + {\font\fet=feta20 at 100pt + \fet\fetaquartrest\hskip 1cm\fetahalfhead\hskip 1cm\fetaflat} +@end iftex + +In the figure above, a few notable glyphs are shown. For example, in +most music the half-notehead is not elliptic but diamond shaped. The +stem of a flat symbol should be slightly brushed, i.e. becoming wider +at the top. Fine endings, such as the one on the bottom of the quarter +rest, should not end in sharp points, but rather in rounded shapes. + +Finally, the blackness of the font is carefully tuned to give a strong +and dark visual impression. Many computer music fonts are rather +light, leading to anemic look when they are printed. + +Although such details are not directly visible to the untrained eye, +careful attention to such details gives lilypond output a more +balanced appearance. We believe that the Feta font is among the most +elegant music font designs available today. + +The Feta font was implemented in the font design system METAFONT. The +source code includes numerous comments on the specific design +considerations of each glyph. PostScript Type1 versions of the font +are also available. + +@node Engraving +@section Engraving + + +Music engraving used to be a craft requiring many years of training. +In the old days, sheet music was made by cutting and stamping the +music mirrored into zinc or pewter plates. The plate would be inked, +and the depressions caused by the cutting and stamping would hold ink +thus forming an positive image. + +Of all craftmanships, engraving was the most difficult to learn trade; +completing the basic training took as long as six years. +Unfortunately, little of this knowledge comes to us as explicitly +formulated rules. + +The only books that specifically deal with music typography are the +books by Ross, Wanske and Hader @cite{hader48,ross,wanske}, and we +have found that are often lacking in detail. Of course, in order to +accurately computerize a process, one has to have a very detailed +description of what must be done. + +@lilypond + \score { \notes { + c'4 e''4 e'4 b'4 | + \property Staff.NoteSpacing \override #'stem-spacing-correction + = #0.0 + \property Staff.StaffSpacing \override #'stem-spacing-correction + = #0.0 + c'4 e''4 e'4 b'4 | + } + \paper { linewidth = -1. } } +@end lilypond + +@node Semantic input format +@section Semantic input format + +One the key points of LilyPond, is that the input is musical: what you +put into the program are musical concepts, such as pitches, durations, +voices, etc. The program then interprets these concepts, and produces +graphic output: glyphs, curves, offsets. In this way the program +tries to act like an engraver. + + +If you only want to print music, this might not interest you so much, +except for the fact that it means you don't have to worry much about +formatting details. + + +Many music encodings exist today @cite{selfridge-field97:beyond-midi}, +but most of the encodings have not been tailored either for human use, +or for processing it with a computer. By its nature, LilyPond input +has both features: it is concise, suitable for human input, and it can +be processed automatically: it may be converted into MIDI or into print. + + +However, one big problem with music, is that there are no standards +for encoding music. Sure, you can record performances using MIDI, but +that offers far too little information for adequate musicological +purposes. With LilyPond we've taken a reverse approach: we have tried +to come up with musical format that can cater virtually all music as +long as it can be notated. + +LilyPond input focuses on musical concepts such as pitch, duration and +music expressions. Musical data is rhythmic, and implies an ordering +of events. This ordering is used to create compound musical concepts: +Large musical structures are built recursively from smaller +expressions: a sequence of music expressions forms a new, longer and +bigger music expression. In this sense, the input is recursive. It +shares this property with very music encodings. The recursive nature +will appeal to the more hackerish musician. + + +@node A programming approach +@section A programming approach + +blabla +@node About this manual +@section About this manual -@section Automatic music printing +blabla diff --git a/Documentation/user/lilypond.tely b/Documentation/user/lilypond.tely index ab70815415..8aa44b9dfa 100644 --- a/Documentation/user/lilypond.tely +++ b/Documentation/user/lilypond.tely @@ -55,13 +55,12 @@ Tom Cato Amundsen. @ifhtml This document is also available as a @uref{../lilypond.ps.gz,gzipped -postscript file}. +postscript file} and @uref{../lilypond.pdf,PDF}. @end ifhtml @chapter GNU LilyPond --- The music typesetter -LilyPond produces sheet music from input files. This document describes -how to use LilyPond. +This is the user manual for GNU LilyPond 1.6.0. @cindex web site @@ -73,6 +72,7 @@ this and other documentation. @menu * Preface:: Preface. +* Introduction:: What, Why, How. * Tutorial:: A tutorial introduction to LilyPond. * Reference Manual:: Reference Manual. * Invoking LilyPond:: Operation. @@ -83,7 +83,6 @@ this and other documentation. * lilypond-book:: Interleaving text with music. * Internals:: How it all works. * Literature:: Additional reading -* Index of internals:(lilypond-internals). Auto generated detailed documentation. * Index:: Unified index. * Function Index:: Function index. * Refman appendix:: @@ -96,6 +95,7 @@ this and other documentation. @mbinclude macros.itexi @mbinclude preface.itely +@mbinclude introduction.itely @mbinclude tutorial.itely @mbinclude refman.itely @mbinclude internals.itely diff --git a/Documentation/user/preface.itely b/Documentation/user/preface.itely index 44469af50c..4cdd5eba69 100644 --- a/Documentation/user/preface.itely +++ b/Documentation/user/preface.itely @@ -31,35 +31,3 @@ Han-Wen and Jan Utrecht/Amsterdam, The Netherlands, March 2001. -@ignore - -appendix? -[details from lilypond-1.0.0] - -GNU LilyPond's roots lie in MPP, a preprocessor to the rather arcane -MusiXTeX macro package for TeX. A friend of mine, Jan Nieuwenhuizen -wrote the first 44 versions (0.01 to 0.44), then his program caught my -attention, and I was slowly sucked in to the interesting problem of -easily producing beautifully printed music. I contributed some -code. We soon realised that MPP's design was too fundamentally broken -to be repaired, so it was decided to rewrite MPP. We debated a lot about -the requirements to an inputformat (fall 1995). I sat down and started -with a parser-first, bottom-up rewrite called mpp95 (which totally -failed, obviously). - -After long and hard thinking, I came up with an algorithm for the -horizontal spacing of multiple staves (april 1996) I coded it (and did -not test it). After starting with this fundamental piece, I slowly -added the stages which come before spacing, and after. A half year -later, I had a first working version, (october 1996). I announced -Patchlevel 0.0.7 (or 8) to the mutex list after asking some technical -details on spacing; it was downloaded approximately 4 times. Then I -got the hang of it, and in the subsequent two months, I coded until it -had doubled in size (pl 23). - -Most the other history is described in the NEWS file. The first large -scale release (0.1) was done after approximately 78 patchlevels on -August 1, 1997. - - -@end ignore -- 2.39.2