]> git.donarmstrong.com Git - lilypond.git/commitdiff
* Documentation/user/refman.itely: doco updates.
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 30 Jul 2002 23:44:07 +0000 (23:44 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 30 Jul 2002 23:44:07 +0000 (23:44 +0000)
* scripts/ly2dvi.py (find_pfa_fonts): add and document --pdf
option.

13 files changed:
ChangeLog
Documentation/user/invoking.itexi
Documentation/user/refman.itely
Documentation/user/tutorial.itely
buildscripts/lilypond-profile.sh
input/bugs/barline.ly [deleted file]
input/bugs/beam-space.ly [deleted file]
input/bugs/different-time.ly [deleted file]
input/bugs/dots.ly [deleted file]
input/bugs/drarn.ly [deleted file]
input/bugs/fermata.ly [deleted file]
input/bugs/grace-fold-spacing.ly [deleted file]
scripts/ly2dvi.py

index 848fd1c1370fc6d4a4c62ddad0c827b3d316586c..d22ce13402b212a701a6eaba6f2fd3e220a54ab6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2002-07-31  Han-Wen  <hanwen@cs.uu.nl>
+
+       * input/bugs/: remove various files.
+
+       * Documentation/user/refman.itely: doco updates.
+
+       * scripts/ly2dvi.py (find_pfa_fonts): add and document --pdf
+       option.
+
 2002-07-30  Rune Zedeler <rune@zedeler.dk>
 
        * ly/engraver-init.ly: add alias "Current" to all contexts.
index 27faa46090cf436eab40db621cdf6fe9f02c9195..c103bdfd3195886bae767b9935ba58f18fe427b4 100644 (file)
@@ -259,8 +259,22 @@ files. The temporary directory is created in the current directory as @code{ly2d
 @item -o,--output=@var{file}
     Generate output to @var{file}.  The extension of @var{file} is ignored.
 @item -P,--postscript
-    Also generate PostScript output, using dvips.
-@item --preview
+    Also generate PostScript output, using dvips.  The postscript uses
+the standard @TeX{} bitmap fonts for your printer.
+@item --pdf
+    Also generate Portable Document Format (PDF). This option will
+generate a PS file using scalable fonts, and will run the PS file
+through @code{ps2pdf} producing a PDF file.
+
+@cindex PDF
+@cindex Scalable fonts
+    
+    If you use lilypond-book or your own wrapper files, don't use
+\use   package[[T1]{fontenc} in the file header but don't forget
+\usepackage[[latin1]{inputenc} if you use any other non-anglosaxian
+characters.
+
+    @item --preview
     Also generate a picture of the first system of the score.
 @item -s,--set=@var{key}=@var{val}
     Add @var{key}= @var{val} to the settings, overriding those specified
@@ -380,6 +394,14 @@ the @code{\paper} block.
 @table @code
 @item LANG
 selects the language for the warning messages of Ly2dvi and LilyPond.
+
+@item GUILE_MAX_SEGMENT_SIZE
+is an option for GUILE, the scheme interpreter; it sets the size of
+the chunks of memory allocated by GUILE.  By increasing this from its
+default 8388608, the performance of LilyPond on large scores is
+slightly improved.
+
+
 @end table
 
 
index cd1aeedaf4cd1dacae4048920945329bd8cb33cc..1e682ac4ce6122aa830aa58617286c526c3ce5ce 100644 (file)
@@ -296,6 +296,14 @@ Durations can also be produced through GUILE extension mechanism.
 @end lilypond
 
 
+@refbugs
+
+Dot placement for chords is not perfect.  In some cases, dots overlap:
+@lilypond[]
+ \context Voice { <f,4. c'' d e f> }
+@end lilypond
+
+
 @node Ties
 @subsection Ties
 
@@ -725,6 +733,7 @@ such as keys, clefs and time signatures.
 @cindex Staff notation
 
 @menu
+* Staff symbol::
 * Key signature::               
 * Clef::                        
 * Time signature::              
@@ -732,6 +741,31 @@ such as keys, clefs and time signatures.
 * Bar lines::                   
 @end menu
 
+@node Staff symbol
+@subsection Staff symbol
+
+
+@cindex adjusting staff symbol
+@cindex StaffSymbol, using \property
+@cindex staff lines, setting number of
+
+
+The lines of the staff symbol are formed by the
+@internalsref{StaffSymbol} grob.  This grob is created at the moment
+that their context is created.  You can not change the appearance of
+the staff symbol by using @code{\override} or @code{\set}.  At the
+moment that @code{\property Staff} is interpreted, a Staff context is
+made, and the StaffSymbol is created before any @code{\override} is
+effective. You can deal with this either overriding properties in a
+@code{\translator} definition, or by using @code{\outputproperty}.
+
+
+@refbugs
+
+If you end a staff half way a piece, the staff symbol may not end
+exactly on the barline.
+
+
 @c .  {Key}
 @node Key signature
 @subsection Key signature
@@ -3185,7 +3219,6 @@ To print a  rehearsal mark, use the @code{\mark} command.
   c1 \mark \default 
   c1 \mark "12"
   c1 \mark \default
-  c1 \mark #'(music "scripts-segno") 
   c1
 }
 @end lilypond
@@ -3197,6 +3230,28 @@ is @internalsref{RehearsalMark} in @internalsref{Score} context. See
 @code{input/test/boxed-molecule.ly} if you need boxes around the
 marks.
 
+The @code{\mark} command can also be used to put signs like coda,
+segno and fermatas on a barline.  The trick is to use the text markup
+mechanism to access the fermata symbol.
+@lilypond[fragment,verbatim,relative=1]
+  c1 \mark #'(music "scripts-ufermata") 
+  c1
+@end lilypond
+
+The problem is that marks that occur at a line break are typeset only
+at the beginning of the next line, opposite to what you want for the
+fermata. This can be corrected by the following property setting
+@example
+\property Score.RehearsalMark \override
+  #'visibility-lambda = #begin-of-line-invisible
+@end example
+
+@cindex fermatas
+@cindex coda
+@cindex segno
+@cindex barlines, putting symbols on 
+
+
 @node Bar numbers
 @subsection Bar numbers
 
@@ -3816,20 +3871,6 @@ The backend is not very strict in type-checking grob properties. If you
 LilyPond may crash.
 
 
-@cindex adjusting staff symbol
-@cindex StaffSymbol, using \property
-@cindex staff lines, setting number of
-
-Some grobs are created at the moment that their context is created. An
-example of such a grob is the staff itself (i.e. the horizontal lines).
-You can not change the appearance of the staff symbol by manipulating
-@code{\property Staff.StaffSymbol}.  At the moment that @code{\property
-Staff} is interpreted, a Staff context is made, and the StaffSymbol is
-created before any @code{\override} is effective. You can deal with this
-either overriding properties in a @code{\translator} definition, or by
-using @code{\outputproperty}.
-
-
 
 
 @node Tuning per grob 
index 2865536d3972ddcce410ef29c8785cf14cb8efcb..d28775ac5b1b3fbe66ee41c176cf581df39a772f 100644 (file)
@@ -314,22 +314,40 @@ ghostview.
 
 The DVI file (@file{test.dvi}) contains the same sheet music in a
 different format. DVI files are more easily processed by the computer,
-so viewing them usually is quicker.  Execute @code{xdvi test.dvi}
-to view the DVI file.
+so viewing them usually is quicker.  Execute @code{xdvi test.dvi} or
+@code{kdvi test.dvi} to view the DVI file. In Xdvi, the mouse buttons
+activate magnifying glasses.  Unfortunately, variable symbols, such as
+beams and slurs won't show up in these.
 
 If your DVI viewer does not have a "Print" button, you can print the
 file by executing @code{lpr test.ps}.
 
 @c volgende alinea schrappen?  
 
-If you can't get the examples to print, then you should look into
-installing and configuring ghostscript.  Refer to GhostScript's website
-at @uref{http://www.ghostscript.com}.
+If your system does not support printing PostScript files, then you
+can install GhostScript, a PostScript emulator.  Refer to
+GhostScript's website at @uref{http://www.ghostscript.com}.
 
 @cindex GhostScript
 @cindex @code{lpr}
 @cindex Printing output
 @cindex PostScript
+@cindex PDF
+
+A final option, is to use the popular PDF format. You can get a PDF
+file by running @code{ly2dvi --pdf test.ly}. With the @code{--pdf},
+you will get a DVI, PS and PDF file. The viewers for the PS files also
+accept PDF files, but there are also many other applications for
+viewing PDF files.
+
+If you are familiar with @TeX{}, then one warning is in place: do not
+use other DVI drivers like @code{dvilj}. The @TeX{} coming out of
+LilyPond uses embedded PostScript code, and will not render correctly
+if you use anything different than @code{dvips}.
+
+@cindex dvips
+@cindex dvilj
+@cindex DVI driver
 
 @unnumberedsubsec Windows users
 Windows users start the terminal by clicking on the LilyPond or Cygwin
index 3a60de2191e0d986d30cf1f5390789b016fafddb..6f88b34523ed49508c30dab7829e814d170a93e4 100644 (file)
@@ -12,7 +12,7 @@ if [ -z "$LILYPONDPREFIX" ]; then
     datadir=`echo "@local_lilypond_datadir@" | sed 's!//!/!g'`
 else
     if [ -d "$LILYPONDPREFIX/share" ]; then
-       datadir=$LILYPONDPREFIX
+       datadir=$LILYPONDPREFIX/share/lilypond/
     fi
     echo "Setting tree to $datadir"
 fi
diff --git a/input/bugs/barline.ly b/input/bugs/barline.ly
deleted file mode 100644 (file)
index 4104a24..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-\version "1.5.68"
-
-\header {
-texidoc = "Staves that end half way a system should end at the bar line."
-}
-
-melody = \notes \relative c' {
-       \partial 8
-       g8 |
-       \bar "|."\clef bass
-}
-
-
-
-accompaniment = \chords  \sequential {
-       r8
-       r2 r2
-}
-
-\score {
-       \simultaneous {
-         \context ChordNames \accompaniment
-            \context Staff {
-               \melody }
-       }
-       \paper { }
-}
diff --git a/input/bugs/beam-space.ly b/input/bugs/beam-space.ly
deleted file mode 100644 (file)
index 46c7f4c..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-u = { \translator Staff = up \stemDown }
-m = { \translator Staff = mid \stemUp }
-
-global = \notes { \key fis \major \time 6/8 }
-
-righta = \notes \transpose c'' {
- \repeat unfold 4 { \m [a,16 \u d a d] \m [c \u d c' d ] [c \m b,] [d \u d ] } ]
-}
-
-
-\score { \notes
-  \context PianoStaff <
-    \context Staff = up {
-      \clef G \global \righta
-    }
-    \context Staff = mid {
-      \clef F \global s2. *4
-    }
-  >
-  \paper { }
-}
diff --git a/input/bugs/different-time.ly b/input/bugs/different-time.ly
deleted file mode 100644 (file)
index 9571507..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-\version "1.5.68"
-
-\header {
-texidoc = " Spacing for one staff in polymetric music should
-be not hampered by a staff in another time signature.
-
-FIXME example was broken at some point. 
-"
-}
-
-\score{
-    \context PianoStaff <
-        \context Staff = upper \notes\relative c''{
-           \property Staff.timeSignatureFraction = #'(3 . 4)
-           c4 c c
-           c2.
-                   
-        }
-        \context Staff = lower \notes\relative c' {
-           \property Staff.timeSignatureFraction = #'(4 . 4)
-           c4 c c c
-           c1
-        }
-    > 
-    \paper{
-       linewidth=-1.0
-       \translator {
-           \ScoreContext
-           \remove Timing_engraver
-       }
-       \translator {
-           \StaffContext
-           \consists Timing_engraver
-       }
-    }
-}
diff --git a/input/bugs/dots.ly b/input/bugs/dots.ly
deleted file mode 100644 (file)
index daac7f5..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-\version "1.5.68"
-
-\header {
- texidoc = "Dots should remain close to the heads they belong to, but should not overlap."
-}
-
-
-\score {
-  \notes
-   \context Voice { <f,4. c'' d e f> }
-}
diff --git a/input/bugs/drarn.ly b/input/bugs/drarn.ly
deleted file mode 100644 (file)
index 7bc9cbc..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-\version "1.5.68"
-%% oops, weird small ties
-
-\score {
-  \context Staff \notes <
-    \time 3/8
-    \context Voice=one \relative c'' {
-      \property Voice.Stem \set #'direction = #1
-      \property Voice.Tie \set #'direction = #1
-      \property Voice.Slur \set #'direction = #1
-      \property Voice.Slur \set #'attachment = #'(head . head)
-      c8 c()c  
-    }
-    \context Voice=two \relative c'' {
-      \property Voice.Stem \set #'direction = #-1
-      \property Voice.Tie \set #'direction = #-1
-      \property Voice.Slur \set #'direction = #-1
-      \property Voice.Slur \set #'attachment = #'(head . head)
-      a8()a~a  
-    }
-  >
-  \paper { linewidth = -1. } 
-%  \paper { linewidth = 40*\staffspace } 
-}
diff --git a/input/bugs/fermata.ly b/input/bugs/fermata.ly
deleted file mode 100644 (file)
index 5f3e93f..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-
-\header {
-    texidoc = "Fermata on rest doesn't go up"
-    }
-
-\score { \notes {  r4-\fermata }} 
diff --git a/input/bugs/grace-fold-spacing.ly b/input/bugs/grace-fold-spacing.ly
deleted file mode 100644 (file)
index d45074f..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-\score{<
-  \notes \relative c'' \context Staff=violin{
-    \time 3/4
-    b4. b8 a g |
-    \grace a g8.^\trill fis32 g fis4 a8. a16 |
-  }
-  \notes \relative c'' \context Staff=violoncello{
-    \time 3/4
-    \clef tenor
-
-    g8 d^\trill [g d c b] |
-    \clef bass b8.^\trill a32 b a4 r |
-  }
->
-\paper{
-  linewidth=-1
-}
-}
-
index 764f12cc76db12693a9ce3adf4b805c1fbf4c534..54ac389ad31f87f5a44082d5f969b73d93968cf7 100644 (file)
@@ -338,6 +338,7 @@ option_definitions = [
        ('', '', 'preview', _("Make a picture of the first system.")),
        (_ ('RES'), '', 'preview-resolution', _("Set the resolution of the preview to RES.")),
        ('', 'P', 'postscript', _ ("generate PostScript output")),
+       ('', '', 'pdf', _ ("generate PDF output")),     
        (_ ("KEY=VAL"), 's', 'set', _ ("change global setting KEY to VAL")),
        ('', 'V', 'verbose', _ ("verbose")),
        ('', 'v', 'version', _ ("print version number")),
@@ -736,6 +737,9 @@ None.
        if extra['orientation'] and extra['orientation'][0] == 'landscape':
                opts = opts + ' -tlandscape'
 
+       if 'PDF' in targets:
+               opts = opts + '-Ppdf -G0 -u lilypond.map'
+               
        cmd = 'dvips %s -o%s %s' % (opts, outbase + '.ps', outbase + '.dvi')
        quiet_system (cmd, 'dvips')
 
@@ -743,6 +747,10 @@ None.
                cmd = 'dvips -E -o%s %s' % ( outbase + '.preview.ps', outbase + '.preview.dvi')         
                quiet_system (cmd, 'dvips for preview')
 
+       if 'PDF' in targets:
+               cmd = 'ps2pdf %s.ps %s.pdf' % (outbase , outbase)
+               quiet_system (cmd, 'ps2pdf')
+               
 def get_bbox (filename):
        # cut & paste 
        system ('gs -sDEVICE=bbox -q  -sOutputFile=- -dNOPAUSE %s -c quit > %s.bbox 2>&1 ' % (filename, filename))
@@ -854,6 +862,9 @@ for opt in options:
                include_path.append (a)
        elif o == '--postscript' or o == '-P':
                targets.append ('PS')
+       elif o == '--pdf':
+               targets.append ('PDF')
+               targets.append ('PS')
        elif o == '--keep' or o == '-k':
                keep_temp_dir_p = 1
        elif o == '--no-lily':