]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-1.5.23
authorfred <fred>
Wed, 27 Mar 2002 02:04:19 +0000 (02:04 +0000)
committerfred <fred>
Wed, 27 Mar 2002 02:04:19 +0000 (02:04 +0000)
17 files changed:
Documentation/topdocs/INSTALL.texi
Documentation/user/converters.itely
Documentation/user/refman.itely
Documentation/windows/installing.texi
lily/completion-note-heads-engraver.cc
lily/grob.cc
lily/lily-guile.cc
lily/note-heads-engraver.cc
lily/paper-outputter.cc
lily/text-engraver.cc
scm/ascii-script.scm
scm/lily.scm
scm/ps.scm
scm/pysk.scm
scm/tex.scm
scripts/abc2ly.py
scripts/etf2ly.py

index dd4b50599af0f19c2d32f37960816d37955c9881..e54217156990ed97cfac0856f4076e161749de4a 100644 (file)
@@ -171,12 +171,10 @@ configure something like:
 
 
 @item pktrace, [OPTIONAL], needed for generating PostScript Type1
-fonts. Get it from
- @uref{http://www.cs.uu.nl/~hanwen/public/software/pktrace-0.1.tar.gz}
+fonts. Get it from  @uref{http://www.cs.uu.nl/~hanwen/pktrace/}
 
 @item autotrace-0.27a, [OPTIONAL], needed for generating PostScript Type1
-fonts. You must apply the patch included pktrace-0.1 first.
-@uref{http://autotrace.sourceforge.net}.
+fonts. @uref{http://autotrace.sourceforge.net}.
  
 @item MetaPost [OPTIONAL] needed for generating PostScript Type3 fonts. Please
 note that tetex-0.4pl8 (included with Red Hat 5.x) does not include
index 05e31d59ffe4ff5344d1cfc8110903423b717519..1d1e75b1b921c669c90f8fa9af45b89f384a6428 100644 (file)
@@ -33,8 +33,10 @@ therefore not recommended to use midi2ly for human-generated midi
 files. Correcting the quantization mistakes of the human player takes a
 lot of time.
 
-Hackers who know about signal processing are invited to write  a more
-robust midi2ly.
+Hackers who know about signal processing are invited to write a more
+robust midi2ly.  midi2ly is written in Python, using a module written in
+C to parse the MIDI files.
+
 
 @subsection Invoking midi2ly
 
@@ -75,12 +77,6 @@ robust midi2ly.
 @end table
 
 
-Report bugs to @email{bug-lilypond@@gnu.org}.
-
-
-Written by @email{Jan Nieuwenhuizen, janneke@@gnu.org}.
-
-
 @node etf2ly
 @section etf2ly
 
@@ -111,11 +107,9 @@ version information
 
 @refbugs
 
-Known: articulation scripts are buggy.  Empty measures confuse etf2ly.
-
-Written by @email{Han-Wen Nienhuys,hanwen@@cs.uu.nl}.
+The list of articulation scripts is incomplete.  Empty measures confuse
+etf2ly.
 
-Report bugs to @email{bug-lilypond@@gnu.org}.
 
 @node abc2ly
 @section abc2ly
@@ -172,18 +166,12 @@ not.
 
 abc2ly ignores the ABC beaming.
 
-Written by @email{Han-Wen Nienhuys,hanwen@@cs.uu.nl}.
-@c How about Laura?   /MB
-
-Report bugs to @email{bug-lilypond@@gnu.org}.
-
 @node pmx2ly
 @section pmx2ly
 
 PMX is a MusiXTeX preprocessor written by Don Simons, see
 @uref{http://icking-music-archive.sunsite.dk/Misc/Music/musixtex/software/pmx/}.
 
-Report bugs to @email{bug-lilypond@@gnu.org}.
 
 @subsection Invoking pmx2ly
 
@@ -204,10 +192,6 @@ set output filename to FILE
 version information
 @end table
 
-Report bugs to @email{bug-lilypond@@gnu.org}.
-
-Written by @email{Han-Wen Nienhuys,hanwen@@cs.uu.nl}.
-
 
 @node musedata2ly
 @section musedata2ly
@@ -242,10 +226,6 @@ version information
 @var{REFFILE}
 @end table
 
-Report bugs to @email{bug-lilypond@@gnu.org}.
-
-Written by @email{Han-Wen Nienhuys,hanwen@@cs.uu.nl}.
-
 
 @node mup2ly
 @section mup2ly
@@ -287,9 +267,5 @@ print warranty and copyright.  Mup2ly comes with absolutely @strong{NO WARRANTY}
 Currently, only plain notes (pitches, durations), voices and staves are
 converted.
 
-Written by @email{Jan Nieuwenhuizen,janneke@@gnu.org}, based on pmx2ly.
-
-Report bugs to @email{bug-lilypond@@gnu.org}.
-
 
 
index 7acb95d58ac419989247d4a1f1bcc1897259aeae..12adf9a8c4d4c93d1ae8f73327f6c8ba79a0b766 100644 (file)
@@ -329,7 +329,7 @@ r1 r2 r4 r8 r16 r32 r64 r64
 @lilypond[]
 \score {
   \notes \relative c'' {
-        a\breve  \autoBeamOff
+    a\breve  \autoBeamOff
     a1 a2 a4 a8 a16 a32 a64 a64 
     r\longa r\breve  
     r1 r2 r4 r8 r16 r32 r64 r64 
@@ -609,6 +609,7 @@ Shortcut for
   \property Staff.clefOctavation = @var{extra transposition of clefname}
 @end example
 
+
 Any change in these properties creates a clef (A @internalsref{Clef} grob).
 
 Supported clef-names include 
@@ -640,7 +641,12 @@ G clef on 2nd line
 @end table
 
 By adding @code{_8} or @code{^8} to the clef name, the clef is
-transposed one octave down or up, respectively.
+transposed one octave down or up, respectively.  Note that you have to
+enclose @var{clefname} in quotes if you use underscores or digits in the
+name. For example,
+@example
+       \clef "G_8"
+@end example 
 
 Supported associated glyphs (for @code{Staff.clefGlyph}) are:
 
index 2df724461ad98167c8e9fe51ddfd9c4840e1883f..daa584aca59a897a3b86be4f440b446b9748a8ca 100644 (file)
@@ -19,41 +19,30 @@ users.  Please remember that we (the developers) rather dislike windows,
 and none of us use it.  Don't complain to us that installing LilyPond is
 too difficult; rather, if you know something about your Windows, send us
 code that works better (see @uref{compiling.html,compiling}).
+Nevertheless, detailed bug reports are appreciated; before you send a
+report, make sure to read the section on bugreports below. 
 
-@section Windows binary setup 
-
-Apart from LilyPond itself, you need Cygwin, GUILE, Python and a TeX
-installation, but all this software be installed by running setup.exe:
-
-@table @asis
-@item LilyPond
-Download and run
-@c let's do http, so that people read the README
-@uref{http://www.lilypond.org/gnu-windows/setup.exe, setup.exe}
-to install LilyPond.
 
-This will install the minimal set of cygwin tools needed to run
-LilyPond.  Make sure to install in the default place, @file{c:/cygwin},
-and install everything.
+@section Windows binary setup 
 
-As of version 1.3.150, you also have the option to install MiKTeX and
-GSView from this installer, which is recommended.  If you choose to
-install these by hand (see below), make sure to install them
-@strong{before} you install LilyPond, otherwise your LilyPond setup will
-be broken.
 
-If you already have cygwin installed, don't worry: nothing will be
-installed twice.  To expand on this minimal set, click
-@uref{http://sources.redhat.com/cygwin/setup.exe,here}, or visit a
-Cygwin @uref{http://sources.redhat.com/cygwin/mirrors.html,mirror site}.
-@end table
+All the software you need is installed by downloading and running
+@uref{http://www.lilypond.org/gnu-windows/setup.exe, setup.exe}.  You
+will be asked some questions. If you are unsure just click "Next".  Do
+not change the default install directory @file{c:/cygwin}.
 
+This installs LilyPond, and Cygwin, GUILE, Python, MiKTeX and GSView If
+you already have some of that software under @file{c:/cygwin}, then
+don't worry: nothing will be installed twice.
 
-@section Windows running setup
+If you want to install any of this software by hand, do this
+@strong{before} you run @file{setup.exe}, otherwise your LilyPond setup
+will not work.
 
-If you're lucky, after running @file{setup.exe} you're all set up.
+@section Testing LilyPond
 
-Open a LilyPond shell (or any bash shell), and type
+Open a LilyPond shell (To open a a lilypond shell, click the "GNU
+LilyPond" icon), and type
 
 @quotation
 @example
@@ -61,7 +50,7 @@ lilypond --help
 @end example
 @end quotation
 
-If you don't see something similar to
+You should see something similar to
 
 @quotation
 @example
@@ -79,25 +68,71 @@ Options:
 @end example
 @end quotation
 
-you should try adding @file{/usr/lilypond-x.y.z/bin} to your @var{PATH},
-do:
+Then, prepare a file called @file{foo.ly}, by issuing
+@example
+notepad foo.ly
+@end example
+Enter the following into the file
+@example
+
+\score @{ \notes @{ c4 ( ) c4 @} @}
+
+@end example
+Close the file and save it. Run the following command a few times until
+it says @code{PS output to `foo.ps', DVI output to `foo.dvi'}.
+@example
+
+ly2dvi -P foo
+
+@end example
+You can now view the file using the following command
+@example
+
+gsview32 foo.ps
+
+@end example
+
+If this works, then you can head to the
+@uref{../../user/out-www/lilypond/Tutorial.html,Tutorial} to start using
+LilyPond.
 
+
+
+@section Removing LilyPond
+
+Start @file{setup.exe}, click Next, select "Install from Local
+Directory". Then click next until you reach "Select packages to
+install". Click "View". Now, for every package, click on the recycle
+icon until it says "Uninstall". Then, click Next.
+
+(If you find this too tedious, you can also simply remove
+@file{c:/cygwin}. This also removes the @file{/home/} directories under
+cygwin (i.e. @file{C:\CYGWIN\HOME}, so make sure that you bring
+important files in safety first.)
+
+@section Troubleshooting
+
+
+@unnumberedsubsec invoking lilypond --help doesn't work
+
+Open the shell, and try adding @file{/usr/lilypond-x.y.z/bin} to your
+@var{PATH}, do:
 @quotation
 @example
 PATH=/usr/lilypond-1.4.2/bin:$PATH
 @end example
 @end quotation
 
-and try again.
-
-
-@subsection Trouble
+Now, invoke @file{lilypond --help}
 
 For problems and solutions see
 @uref{http://lilypond.org/wiki?TroubleshootingWindows,Troubleshooting
 Windows}
 
 
+
+
+@ignore
 @subsection Additional software
 
 LilyPond needs a number of software packages to be really useful.  These
@@ -141,11 +176,8 @@ Click @uref{ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/gs650/gs650w32.exe
 @uref{ftp://ftp.cs.wisc.edu/ghost/ghostgum,ftp.cs.wisc.edu}.
 or visit the
 @uref{http://www.cs.wisc.edu/~ghost/,Ghostscript, Ghostview and GSview site}.
-
 @end table
 
-
-
 [TODO:
 
 
@@ -154,9 +186,6 @@ emacs-on-cygwin setup.
 
 ]
 
-
-@ignore 
-
   guile -v
   Guile 1.4.1
 
@@ -188,4 +217,19 @@ in each corner.
 
 @end ignore
 
+@ignore
+@c irrelevant.
+
+If you want to install more of cygwnTo expand on this minimal set,
+@section If you already have MikTeX, GSView or
 
+If you already have cygwin installed, don't worry: nothing will be
+installed twice.  To expand on this minimal set, click
+@uref{http://sources.redhat.com/cygwin/setup.exe,here}, or visit a
+Cygwin @uref{http://sources.redhat.com/cygwin/mirrors.html,mirror site}.
+
+
+This will install the minimal set of cygwin tools needed to run
+LilyPond.  Make sure to install in the default place, @file{c:/cygwin},
+and install everything. 
+@end ignore
index 965f6cda80a8b829bf0fa56c5fd153acbe6fd4e3..85609c295a798272175a488d70ead6c1a88b4761 100644 (file)
@@ -302,5 +302,5 @@ ENTER_DESCRIPTION(Completion_heads_engraver,
 break long notes and automatically tie them into the next measure.",
 /* creats*/       "NoteHead Dots",
 /* acks  */       "",
-/* reads */       "",
+/* reads */       "easyPlay centralCPosition measurePosition measureLength",
 /* write */       "");
index 3f35eb86b8edd66ee21dad151c9429ddb7e42bc3..4251e16c5edb9594cb8d884c6ee5728e896e018e 100644 (file)
@@ -397,7 +397,7 @@ Grob::handle_broken_grobs (SCM src, SCM criterion)
          return SCM_UNDEFINED;
        }
     }
-  else if (SCM_CONSP (src))
+  else if (ly_pair_p (src)) // SCM_CONSP (src))  // huh?
     {
       SCM oldcar =ly_car (src);
       /*
index 42d28ecdd5a5596ecdf6cbb2bd8532737fcb096b..e01fd24b30ba7330910da96325600344533ee96f 100644 (file)
@@ -266,8 +266,11 @@ init_lily_guile (String p )
   // todo: junk this. We should make real modules iso. just loading files.
   prepend_load_path (p + "/scm/");
 
+
+#if GUILE_MINOR_VERSION >= 5
   SCM last_mod = scm_current_module ();
   scm_set_current_module (scm_c_resolve_module ("guile"));
+#endif
   
   init_cxx_function_smobs ();
   for (int i=scm_init_funcs_->size () ; i--;)
@@ -276,7 +279,10 @@ init_lily_guile (String p )
   if (verbose_global_b)
     progress_indication ("\n");
   read_lily_scm_file ("lily.scm");
+
+#if GUILE_MINOR_VERSION >= 5
   scm_set_current_module (last_mod);
+#endif
 }
 
 unsigned int ly_scm_hash (SCM s)
index ae238425cd33725d1068d92ff38b246442213dd9..e3eed55cd51dfcb747b7f25003a6cdb0b567ce83 100644 (file)
@@ -139,5 +139,5 @@ ENTER_DESCRIPTION(Note_heads_engraver,
 /* descr */       "Generate one or more noteheads from Music of type Note_req.",
 /* creats*/       "NoteHead Dots",
 /* acks  */       "",
-/* reads */       "",
+/* reads */       "easyPlay centralCPosition",
 /* write */       "");
index abfed8256326a756f274791b9ea91fdcbcce84f8..24ed811878b28200c5cc8576c4ee5f8d860187bc 100644 (file)
@@ -91,7 +91,7 @@ Paper_outputter::output_comment (String str)
 void
 Paper_outputter::output_scheme (SCM scm)
 {
-  scm_apply_2 (output_func_, scm, file_, SCM_EOL);
+  gh_call2 (output_func_, scm, file_);
 }
 
 void
index 3fdc1a3f71e1495885e91f863e51a64332a2d2b9..5db60e1750c93f641f14cc2021ef8475674771ac 100644 (file)
@@ -145,7 +145,8 @@ Text_engraver::stop_translation_timestep ()
   for (int i=0; i < texts_.size (); i++)
     {
       Item *ti = texts_[i];
-      Side_position_interface::add_staff_support (ti);
+      if (!to_boolean (get_property ("scriptHorizontal")))
+       Side_position_interface::add_staff_support (ti);
       typeset_grob (ti);
     }
   texts_.clear ();
index b3138812f30164dfaa4174dc52e00bd6acf831b3..25255e3f2886171b41417498a05da2e240822ed0 100644 (file)
@@ -1,11 +1,9 @@
 (define-module (scm ascii-script)
-  :export (as-output-expression)
-  :no-backtrace
   )
 
 (define this-module (current-module))
 
-(define (as-output-expression expr port)
+(define-public (as-output-expression expr port)
   (display (eval expr this-module) port)
   )
 
index d5aa43e4299dbe9cd84a478d80dfce91d816f43f..5f10a15e7c704fa54d1903f59104cfd5ddd80939 100644 (file)
 
 
 
-
 (use-modules (scm tex)
             (scm ps)
             (scm pysk)
             (scm ascii-script)
+            (scm sketch)
             )
 
 (define output-alist
     ("scm" . ,write)
     ("as" . ,as-output-expression)
     ("pysk" . ,pysk-output-expression)
+    ("sketch" . ,sketch-output-expression)
 ))
 
 
-
-
 (define (find-dumper format )
   (let*
       ((d (assoc format output-alist)))
           "sketch.scm"
           "pdf.scm"
           "pdftex.scm"
-          "ascii-script.scm"
           "c++.scm"
           "grob-property-description.scm"
           "translator-property-description.scm"
 
 
 
+1
index f469ec7ac9a308679542ac94ac1e7955e5e0f90b..6af36d6ab7a897bb502b69a484f47c814c7f2d15 100644 (file)
@@ -8,20 +8,27 @@
 
 
 (define-module (scm ps)
-  :export (ps-output-expression)
-  :no-backtrace
   )
 
 (define this-module (current-module))
 
-(define (ps-output-expression expr port)
-  (display (eval expr this-module) port)
-  )
+(debug-enable 'backtrace)
+
+(if (or (equal? (minor-version) "4")
+       (equal? (minor-version) "3.4"))
+    (define-public (ps-output-expression expr port)
+      (display (eval-in-module expr this-module) port )
+      )
+
+    (define-public (ps-output-expression expr port)
+      (display (eval expr this-module) port )
+      )
+    )
 
  
 (use-modules
  (guile)
- (guile-user))
+)
 
 
 
index e999e00d257dad970f91543c3d7ae8e7f79bab85..e62575af535daeafefd88d3bc86b70b0c1e2f6db 100644 (file)
@@ -8,19 +8,16 @@
 
 
 (define-module (scm pysk)
-  :export (pysk-output-expression)
-  :no-backtrace
   )
 
 (use-modules (scm ps)
             (ice-9 regex)
             (ice-9 string-fun)
-            (guile-user)
             (guile)
             )
 
 (define this-module (current-module))
-(define (pysk-output-expression expr port)
+(define-public (pysk-output-expression expr port)
   (display (pythonify expr) port )
   )
 
index 01880f90f64e7a28f950b0916b50290c5ceee252..072ed76ecede1241b2d85a716b866b3747798f5a 100644 (file)
@@ -6,16 +6,12 @@
 ;;; Han-Wen Nienhuys <hanwen@cs.uu.nl>
 
 
-(define-module (scm tex)
-  :export (tex-output-expression)
-  :no-backtrace
-  )
-
+(define-module (scm tex) )
+(debug-enable 'backtrace)
 (use-modules (scm ps)
             (ice-9 regex)
             (ice-9 string-fun)
             (ice-9 format)
-            (guile-user)
             (guile)
             )
 
@@ -87,7 +83,7 @@
   (embedded-ps (list 'bracket  arch_angle arch_width arch_height height arch_thick thick)))
 
 (define (dashed-slur thick dash l)
-  (embedded-ps (list 'dashed-slur   thick dash l)))
+  (embedded-ps (list 'dashed-slur thick dash `(quote ,l))))
 
 (define (hairpin thick w sh eh)
   (embedded-ps (list 'hairpin thick w sh eh))
   ""
   )
 
-
 (define (embedded-ps expr)
   (let
       ((os (open-output-string)))
 ;;
 ;; need to do something to make this really safe.
 ;;
-(define (output-tex-string s)
+(define-public (output-tex-string s)
   (if security-paranoia
       (if use-regex
          (regexp-substitute/global #f "\\\\" s 'pre "$\\backslash$" 'post)
                                        ; no-origin not yet supported by Xdvi
 (define (no-origin) "")
 
-(define (tex-output-expression expr port)
-  (display (eval expr this-module) port )
+(define my-eval-in-module eval)
+
+(if (or (equal? (minor-version) "4")
+       (equal? (minor-version) "3.4"))
+    (begin
+      (set! my-eval-in-module eval-in-module)
+
+    ))
+
+(define-public (tex-output-expression expr port)
+  (display (my-eval-in-module expr this-module) port )
   )
+
index 23aa46d3977c9df9c39fd87349449dac56bfbaab..af8cbf877c8b810b10e0b4813c2416e22859dfc9 100644 (file)
@@ -1269,6 +1269,12 @@ Options:
   
 This program converts ABC music files (see
 http://www.gre.ac.uk/~c.walshaw/abc2mtex/abc.txt) To LilyPond input.
+
+
+Report bugs to bug-gnu-music@gnu.org
+
+Written by Han-Wen Nienhuys <hanwen@cs.uu.nl>, Laura Conrad
+<lconrad@laymusic.org>, Roy Rankin <Roy.Rankin@@alcatel.com.au>
 """
 
 def print_version ():
index f80334bc14d7dac35c0f4953e79d63b7ca4c8d8d..36976017a4240744ac4547d1bc61d8f66d257760 100644 (file)
@@ -1,7 +1,7 @@
 #!@PYTHON@
 
 # info mostly taken from looking at files. See also
-# http://www.cs.uu.nl/~hanwen/lily-devel/etf.html
+# http://lilypond.org/wiki/?EnigmaTransportFormat
 
 # This supports
 #
@@ -24,7 +24,7 @@
 #  * dynamics
 #  * empty measures (eg. twopt03.etf from freenote)
 #
-# 
+
 
 program_name = 'etf2ly'
 version = '@TOPLEVEL_VERSION@'