Re: guile sandbox without guile

2009-06-20 Thread Trevor Daniels


Neil Puttock wrote Friday, June 19, 2009 11:39 PM



2009/6/19 Mark Polesky :


This may be totally obvious to everyone here, but Windows users
can't just run guile without running LilyPond (I'm thinking for
users who are working on learning scheme). At least not to my
knowledge.


When I was using Windows exclusively, I used to open a command 
prompt

(or git bash once I'd installed msysgit) and type `guile'. :)


Typing "guile" works fine for me in git bash, but in the command
prompt window under Vista I get

ERROR: In procedure primitive-load-path
ERROR: Unable to find file "ice-9/boot-9.scm" in load path

even though I've added the ice-9 directory to my path.

??

Trevor 




___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: texi2html web page, second attempt

2009-06-20 Thread John Mandereau
Le 13/06/2009 20:14, Graham Percival a écrit : 
> To counter-act the "texi2html looks boring" idea, here's a new
> version:
> http://percival-music.ca/blogfiles/out/lilypond-general_1.html

You made the proof of concept of using texi2html to write a website in
Texinfo; this is nice and promising, I'm now almost convinced that we
could adopt this technical design.  However, I'm sure I want to update
the translation infrastructure first, as it will be reused in the
website if we adopt this design: remember that it's about translating
node names and section titles directly in the translated files, so it
would well take between 10 and 15 hours to hack the scripts and apply
and check the changes to existing translations.


> 2)  Apologies to people who worked on the perl texinfo init file
> for the docs.  I hacked it up horribly to get this version.  

You could thank them too :-D


> - also, if we end up going this route, somebody (I'm willing to do
>   it, although I wouldn't mind delegating this :)  needs to make
>   the nagivation menu show the current subsections in a second
>   list.  (like the current webpage)
>   

This is possible, but I don't know how much Perl hacking it requires. It
would be nice to generate the (sub)TOC as a drop-down menu activated by
mouse hover/click BTW.


> - we also probably want to remove the section-name from
>   the page.  Not a big deal.

... or using the node names for links (cross-references) and menus, and
reuse current web site  title as the section name in Texinfo sources
so we still have the same  on the final HTML page.



> 3)  Ok, so why do I want to use texinfo so much?
> - makes pdfs+info.  I personally *never* use those formats, but I
>   know that some people still use them.  IMO, if we're going to
>   support those formats for the manuals, we should support them
>   for the information that's on the website.
>   

I'm not so enthusiast for a single huge PDF that contains so much
heterogenous kinds of information. Anyway, that's not a big deal, as
it's possible to have several master Texinfo files, with each being used
to produce one PDF document. Of course, HTML output has a much higher
priority.


> - we all know texinfo.  It's easy to fix small mistakes in it.  If
>   we go this route, I can have the content of the new website done
>   by the end of this weekend.  Then we just need to adjust the
>   style (tweak the init file, write a CSS, maybe make new images,
>   etc).  Oh, and adjusting the translation stuff[*].

If I may add an advantage of Texinfo over HTML, it is more concise and
faster to type.

Happy Texinfo/Perl/HTML hacking,
John



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


MacOS X 10.5 GUI

2009-06-20 Thread Christian Hitz

Hi all,

I have made an attempt to rebuilt the Mac GUI for LilyPond on 10.5  
(according to
the instructions from http://www.mail-archive.com/lilypond-devel@gnu.org/msg12065.html) 
.


The GUI itself is a Universal Binary. I have tested it on 10.5 PPC and  
i386. It can

be downloaded form:

http://www.klarinett.li/lilypond.tar.gz

I would be interested if it also works on older (10.4, 10.3) versions  
of MacOS X.


As the LilyPond binary itself is not included you would have to start  
it from the

Terminal with the following command:

$ LILYPOND_DEBUG_APPDIR=/path/to/LilyPond.app open LilyPond.app

I have also made a few minor changes to the GUI itself. Please see the  
attached patches.


Regards,
Christian


0001-read-LilyPonds-output-as-utf-8.patch
Description: Binary data


0002-extract-the-LilyPond-directory-determination-to-own-.patch
Description: Binary data


0003-get-LilyPond-version-from-used-binary.patch
Description: Binary data


0004-update-to-2.12.patch
Description: Binary data


0005-subprocess.py-is-included-automatically.patch
Description: Binary data


0006-shutil.py-is-needed-for-convert-ly.patch
Description: Binary data
___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Error producing .pdf using Lily V2.13.1 on Ubuntu 9.04 - ghostscript barfs

2009-06-20 Thread Ian Hulin

Whoops, that should have read Ubuntu 9.04 in the title of course.
Apologies for the noise.
Cheers,
Ian

Ian Hulin wrote:
I get this error message when compiling my lilypond source (by this 
stage it's already produced the .ps file):


Converting to `./Exsultate-Andante.pdf'...
Invoking `gs  -dSAFER -dDEVICEWIDTHPOINTS=595.28 
-dDEVICEHEIGHTPOINTS=841.89 -dCompatibilityLevel=1.4 -dNOPAUSE -dBATCH 
-r1200 -sDEVICE=pdfwrite -sOutputFile="./Exsultate-Andante.pdf" -c 
.setpdfwrite -f "Exsultate-Andante.ps"'...GPL Ghostscript SVN 
PRE-RELEASE 8.65: Can't find initialization file gs_init.ps.


However, if I run a terminal in the same directory as the .ly file and 
copy and paste the command line being complained about, it happily 
produces the .pdf from the .ps.


What's wrong here, gs --version gives me
8.64.

Is this a problem with the lily kit, or my system set-up?

Cheers,
Ian Hulin




___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: texi2html web page, second attempt

2009-06-20 Thread Patrick McCarty
On Sat, Jun 20, 2009 at 01:54:30PM +0200, John Mandereau wrote:
> Le 13/06/2009 20:14, Graham Percival a écrit : 
> 
> > - also, if we end up going this route, somebody (I'm willing to do
> >   it, although I wouldn't mind delegating this :)  needs to make
> >   the nagivation menu show the current subsections in a second
> >   list.  (like the current webpage)
> >   
> 
> This is possible, but I don't know how much Perl hacking it requires. It
> would be nice to generate the (sub)TOC as a drop-down menu activated by
> mouse hover/click BTW.

I agree.

For this to happen, we would need to have *one* unordered list instead
of two separate lists.  I'm referring to the one in div#tocframe.
They would look like this:

* unnumbered
  * unnumberedsec
  * unnumberedsec
* unnumberedsubsec
* unnumbered
* unnumbered
* unnumbered

I could create drop-down menus with this structure (with pure CSS),
but I don't know how much modification the init file would need.


Thanks,
Patrick


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


[PATCH] Fix crash when a stencil routine is missing

2009-06-20 Thread Patrick McCarty
Hello,

I have uploaded a patch to Rietveld:

http://codereview.appspot.com/83046/show

***

The motivation for the patch is this report:

http://lists.gnu.org/archive/html/lilypond-user/2009-02/msg00603.html

However, since dashed slurs no longer use the "dashed-slur" routine,
this particular crash has been fixed.  But my patch fixes the general
case of missing stencil routines.

Also, I want to add an "embedded-svg" routine in a follow-up patch.  :-)


Thanks,
Patrick


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


proposals for LM B. Scheme tutorial

2009-06-20 Thread Mark Polesky

Here are some proposed additions to LM B. Scheme tutorial

These are things that I wished I knew when I was starting! I
haven't made a patch because I want to get feedback from you guys
first.
Thanks
- Mark

***(I'm leaving this paragraph as it is)
LilyPond uses the Scheme programming language, both as part of the
input syntax, and as internal mechanism to glue modules of the
program together. This section is a very brief overview of
entering data in Scheme. If you want to know more about Scheme,
see http://www.schemers.org.

***new paragraph:
LilyPond uses the GNU Guile implementation of Scheme, which is
based on the Scheme "R5RS" standard. If you are learning Scheme to
use with LilyPond, working with a different implementation (or
referring to a different standard) is not recommended. Information
on guile can be found at http://www.gnu.org/software/guile/. The
"R5RS" Scheme standard is located at
http://www.schemers.org/Documents/Standards/R5RS/.

***back to current:
The most basic thing of a language is data: numbers, character
strings, lists, etc. Here is a list of data types that are
relevant to LilyPond input. 

...jump a bit...

In a music file, snippets of Scheme code are introduced with the
hash mark #. So, the previous examples translated in LilyPond are

##t ##f
#1 #-1.5
#"this is a string"
#"this
is
a string"

***new paragraph and example:
Multiple consecutive scheme expressions in a music file can be
combined using the *begin* operator. This reduces the number of
hash marks to one. However, within such a combined expression,
LilyPond comments ("%" and "%{ %}") will produce errors.

#(begin

(define foo 0)
(define bar 1)

)

***new sentence and example:
Comments in Guile Scheme are entered as follows:

; this is a single-line comment

#!
this a (non-nestable)
guile-style block comment
!#

***back to current:
For the rest of this section, we will assume that the data is
entered in a music file, so we add #s everywhere. 





...and maybe at the end, some info regarding using the display
function within a music file to emulate a guile "sandbox".
See the thread at:
http://lists.gnu.org/archive/html/lilypond-devel/2009-06/msg00436.html



  


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: texi2html web page, second attempt

2009-06-20 Thread Graham Percival
On Sat, Jun 20, 2009 at 09:57:20AM -0700, Patrick McCarty wrote:
> On Sat, Jun 20, 2009 at 01:54:30PM +0200, John Mandereau wrote:
> > Le 13/06/2009 20:14, Graham Percival a écrit : 
> > 
> > > - also, if we end up going this route, somebody (I'm willing to do
> > >   it, although I wouldn't mind delegating this :)  needs to make
> > >   the nagivation menu show the current subsections in a second
> > >   list.  (like the current webpage)
> > 
> > This is possible, but I don't know how much Perl hacking it requires. It
> > would be nice to generate the (sub)TOC as a drop-down menu activated by
> > mouse hover/click BTW.
> 
> I agree.

Really?  I prefer the current webpage's display, since you can see
all the sub-sections of each section.  (or all the sections of
each "chapter")

I mean, if somebody is reading Introduction->Features, I think
it'd be nice to see Introduction->Examples and Introduction->Crash
course, without having to hover the mouse around.

> For this to happen, we would need to have *one* unordered list instead
> of two separate lists.  I'm referring to the one in div#tocframe.
> They would look like this:
> 
> * unnumbered
>   * unnumberedsec
>   * unnumberedsec
> * unnumberedsubsec
> * unnumbered
> * unnumbered
> * unnumbered
> 
> I could create drop-down menus with this structure (with pure CSS),
> but I don't know how much modification the init file would need.

That was actually the default for the init file -- it took me
about an hour to figure out how to hack-comment-out lines so it
wouldn't do this!  :)

I could change it back for an experiment, though.  If I see it in
action, I might like it better... or I may be outvoted :)
In any case, it would be easy to compare between the
current-webpage version and the drop-down version.


... ok, experiment pushed to web-gop.  Go ahead and do your magic
to web-gop/texinfo/css/ anytime.  :)

... nope, can't do.  Whenever I try to commit it, I get:
gperc...@nagi:~/svn/web-gop$ git commit texinfo/web-texi2html.init 
error: invalid object d92e8d14ac7c92171da2feb403f85eee6cade51a
error: Error building trees


Mao.  I'll delete the whole dir and download everything from the
main repo again, then add the file.  In the meantime, I've
attached the diff; you can apply it to your local copy and go from
there.

Cheers,
- Graham
--- /home/gperciva/svn/web-gop/texinfo/web-texi2html.init	2009-06-20 13:20:49.0 -0700
+++ web-texi2html.init	2009-06-20 13:16:57.0 -0700
@@ -619,11 +619,11 @@
 }
 # if no child nodes were generated, e.g. for the index, where expanded pages
 # are ignored, don't generate a list at all...
-#if (@child_result) {
-#  push (@result, "\n$ind\n");
-#  push (@result, @child_result);
-#  push (@result, "$ind\n");
-#}
+if (@child_result) {
+  push (@result, "\n$ind\n");
+  push (@result, @child_result);
+  push (@result, "$ind\n");
+}
   }
   push (@result, "$ind\n");
   return @result;
@@ -649,8 +649,8 @@
 return () if not defined($current_element);
 # Create the toc entries recursively
 #FIXME
-my @toc_entries = ("\n");
-#my @toc_entries = ("\n", "\n");
+#my @toc_entries = ("\n");
+my @toc_entries = ("\n", "\n");
 my $children = $current_element->{'section_childs'};
 # FIXME: generate toc
 foreach ( @$children ) {
@@ -658,8 +658,8 @@
 }
 push (@toc_entries, "\n");
 #FIXME
-#push (@toc_entries, "\n");
-push (@toc_entries, "\n");
+push (@toc_entries, "\n");
+#push (@toc_entries, "\n");
 return @toc_entries;
 }
 
@@ -702,34 +702,16 @@
 #   ) . "\n";
 
 
-## FIXME: make this generate from the file properly
-#my $foo = "
-#Home
-#[Introduction]
-#Download
-#Documentation
-##Development
-#About
-#
-#
-#
-#Features
-#Examples
-#[Crash Course]
-#
-#";
-#	print $fh $foo;
-
 foreach my $line (@lines) {
   print $fh $line;
 }
 
 # FIXME: do second layer
-print $fh "\n";
-print $fh "\n";
-print $fh "FIXME Insert second-layer TOC frame here\n";
-print $fh "\n";
-print $fh "";
+#print $fh "\n";
+#print $fh "\n";
+#print $fh "FIXME Insert second-layer TOC frame here\n";
+#print $fh "\n";
+#print $fh "";
 
 print $fh "\n\n";
   }
___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: proposals for LM B. Scheme tutorial

2009-06-20 Thread Graham Percival
LGreatTM!

Cheers,
- Graham

On Sat, Jun 20, 2009 at 01:17:02PM -0700, Mark Polesky wrote:
> 
> Here are some proposed additions to LM B. Scheme tutorial
> 
> These are things that I wished I knew when I was starting! I
> haven't made a patch because I want to get feedback from you guys
> first.
> Thanks
> - Mark
> 
> ***(I'm leaving this paragraph as it is)
> LilyPond uses the Scheme programming language, both as part of the
> input syntax, and as internal mechanism to glue modules of the
> program together. This section is a very brief overview of
> entering data in Scheme. If you want to know more about Scheme,
> see http://www.schemers.org.
> 
> ***new paragraph:
> LilyPond uses the GNU Guile implementation of Scheme, which is
> based on the Scheme "R5RS" standard. If you are learning Scheme to
> use with LilyPond, working with a different implementation (or
> referring to a different standard) is not recommended. Information
> on guile can be found at http://www.gnu.org/software/guile/. The
> "R5RS" Scheme standard is located at
> http://www.schemers.org/Documents/Standards/R5RS/.
> 
> ***back to current:
> The most basic thing of a language is data: numbers, character
> strings, lists, etc. Here is a list of data types that are
> relevant to LilyPond input. 
> 
> ...jump a bit...
> 
> In a music file, snippets of Scheme code are introduced with the
> hash mark #. So, the previous examples translated in LilyPond are
> 
> ##t ##f
> #1 #-1.5
> #"this is a string"
> #"this
> is
> a string"
> 
> ***new paragraph and example:
> Multiple consecutive scheme expressions in a music file can be
> combined using the *begin* operator. This reduces the number of
> hash marks to one. However, within such a combined expression,
> LilyPond comments ("%" and "%{ %}") will produce errors.
> 
> #(begin
> 
> (define foo 0)
> (define bar 1)
> 
> )
> 
> ***new sentence and example:
> Comments in Guile Scheme are entered as follows:
> 
> ; this is a single-line comment
> 
> #!
> this a (non-nestable)
> guile-style block comment
> !#
> 
> ***back to current:
> For the rest of this section, we will assume that the data is
> entered in a music file, so we add #s everywhere. 
> 
> 
> 
> 
> 
> ...and maybe at the end, some info regarding using the display
> function within a music file to emulate a guile "sandbox".
> See the thread at:
> http://lists.gnu.org/archive/html/lilypond-devel/2009-06/msg00436.html
> 
> 
> 
>   
> 
> 
> ___
> lilypond-devel mailing list
> lilypond-devel@gnu.org
> http://lists.gnu.org/mailman/listinfo/lilypond-devel


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: proposals for LM B. Scheme tutorial

2009-06-20 Thread Nicolas Sceaux

Le 20 juin 09 à 22:17, Mark Polesky a écrit :


***new paragraph and example:
Multiple consecutive scheme expressions in a music file can be
combined using the *begin* operator. This reduces the number of
hash marks to one. However, within such a combined expression,
LilyPond comments ("%" and "%{ %}") will produce errors.

   #(begin

   (define foo 0)
   (define bar 1)

   )


The formatting is bad.

> #(begin
>(define foo 0)
>(define bar 1))

Parentheses are never left alone on a line.



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: proposals for LM B. Scheme tutorial

2009-06-20 Thread Jonathan Kulp

Graham Percival wrote:

LGreatTM!

Cheers,
- Graham



+1! Thanks for helping everyone else learn from your experience. 
(and for your sweet scheme hacks!)


Jon


On Sat, Jun 20, 2009 at 01:17:02PM -0700, Mark Polesky wrote:

Here are some proposed additions to LM B. Scheme tutorial

These are things that I wished I knew when I was starting! I
haven't made a patch because I want to get feedback from you guys
first.
Thanks
- Mark

***(I'm leaving this paragraph as it is)
LilyPond uses the Scheme programming language, both as part of the
input syntax, and as internal mechanism to glue modules of the
program together. This section is a very brief overview of
entering data in Scheme. If you want to know more about Scheme,
see http://www.schemers.org.

***new paragraph:
LilyPond uses the GNU Guile implementation of Scheme, which is
based on the Scheme "R5RS" standard. If you are learning Scheme to
use with LilyPond, working with a different implementation (or
referring to a different standard) is not recommended. Information
on guile can be found at http://www.gnu.org/software/guile/. The
"R5RS" Scheme standard is located at
http://www.schemers.org/Documents/Standards/R5RS/.

***back to current:
The most basic thing of a language is data: numbers, character
strings, lists, etc. Here is a list of data types that are
relevant to LilyPond input. 


...jump a bit...

In a music file, snippets of Scheme code are introduced with the
hash mark #. So, the previous examples translated in LilyPond are

##t ##f
#1 #-1.5
#"this is a string"
#"this
is
a string"

***new paragraph and example:
Multiple consecutive scheme expressions in a music file can be
combined using the *begin* operator. This reduces the number of
hash marks to one. However, within such a combined expression,
LilyPond comments ("%" and "%{ %}") will produce errors.

#(begin

(define foo 0)
(define bar 1)

)

***new sentence and example:
Comments in Guile Scheme are entered as follows:

; this is a single-line comment

#!
this a (non-nestable)
guile-style block comment
!#

***back to current:
For the rest of this section, we will assume that the data is
entered in a music file, so we add #s everywhere. 






...and maybe at the end, some info regarding using the display
function within a music file to emulate a guile "sandbox".
See the thread at:
http://lists.gnu.org/archive/html/lilypond-devel/2009-06/msg00436.html




--
Jonathan Kulp
http://www.jonathankulp.com


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: proposals for LM B. Scheme tutorial

2009-06-20 Thread Mark Polesky

Nicolas Sceaux wrote:
> >#(begin
> >
> >(define foo 0)
> >(define bar 1)
> >
> >)
>
> The formatting is bad.
>
> > #(begin
> >(define foo 0)
> >(define bar 1))
>
> Parentheses are never left alone on a line.

I respectfully* disagree:
http://community.schemewiki.org/?scheme-style#H-189ddlj

Though I think it might depend on the size of the code within the
#(begin ...). When I have many screens worth of consecutive scheme
expressions lumped into a #(begin ...), the extra indenting (even
just 2 spaces) seems unnecessary. But even more to the point, when 
the last expression is a large procedure, and I want to block-
comment it out for debugging, I don't want to accidentally remove
the terminal parenthesis of the (begin ...).

#(begin
  (define foo 0)
#!
  (define large-procedure ...))
!#


And squeezing a little !# between parentheses is also a bad idea
since it's harder to find than if it were in the first column.

  (define bar 1)!#)

- Mark

*really. You're a LOT better than me at scheme.



  


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: texi2html web page, second attempt

2009-06-20 Thread Patrick McCarty
On Sat, Jun 20, 2009 at 1:21 PM, Graham
Percival wrote:
> On Sat, Jun 20, 2009 at 09:57:20AM -0700, Patrick McCarty wrote:
>> On Sat, Jun 20, 2009 at 01:54:30PM +0200, John Mandereau wrote:
>> > Le 13/06/2009 20:14, Graham Percival a écrit :
>> >
>> > > - also, if we end up going this route, somebody (I'm willing to do
>> > >   it, although I wouldn't mind delegating this :)  needs to make
>> > >   the nagivation menu show the current subsections in a second
>> > >   list.  (like the current webpage)
>> >
>> > This is possible, but I don't know how much Perl hacking it requires. It
>> > would be nice to generate the (sub)TOC as a drop-down menu activated by
>> > mouse hover/click BTW.
>>
>> I agree.
>
> Really?  I prefer the current webpage's display, since you can see
> all the sub-sections of each section.  (or all the sections of
> each "chapter")
>
> I mean, if somebody is reading Introduction->Features, I think
> it'd be nice to see Introduction->Examples and Introduction->Crash
> course, without having to hover the mouse around.

Well, I was mainly interested in it because I know how to do drop-down
menus.  But on second thought, the method does not work on IE (<=6),
so this will be more trouble than it's worth.


>> For this to happen, we would need to have *one* unordered list instead
>> of two separate lists.  I'm referring to the one in div#tocframe.
>> They would look like this:
>>
>> * unnumbered
>>   * unnumberedsec
>>   * unnumberedsec
>>     * unnumberedsubsec
>> * unnumbered
>> * unnumbered
>> * unnumbered
>>
>> I could create drop-down menus with this structure (with pure CSS),
>> but I don't know how much modification the init file would need.
>
> That was actually the default for the init file -- it took me
> about an hour to figure out how to hack-comment-out lines so it
> wouldn't do this!  :)

Okay, thanks for the patch.

I started from scratch on the CSS.  There might be some things I
forgot, but see what you think.  If this is an improvement (for now),
I can send a patch.  It should render decently.  Not sure if the
submenus will work in IE<=6, but you probably don't use those
browsers.  :-)

http://uoregon.edu/~pmccarty/web-lily/lilypond-general_1.html


-Patrick


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: guile sandbox without guile

2009-06-20 Thread Neil Puttock
2009/6/20 Trevor Daniels :

> Typing "guile" works fine for me in git bash, but in the command
> prompt window under Vista I get
>
> ERROR: In procedure primitive-load-path
> ERROR: Unable to find file "ice-9/boot-9.scm" in load path

I get the same error under XP, so it's quite possible I'm confusing
this usage with git bash.

I looked through the archives, and there's a post here from Gilles
which implies it hasn't worked for a long time:

http://lists.gnu.org/archive/html/lilypond-user/2007-09/msg00581.html

Following his advice, navigating to C:\Program Files\LilyPond\usr works.

> even though I've added the ice-9 directory to my path.

I also tried that with no success.  Having read the Guile manual, I
thought adding the environment variable GUILE_LOAD_PATH=C:\Program
Files\LilyPond might work, but it doesn't have any effect.

Regards,
Neil


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: proposals for LM B. Scheme tutorial

2009-06-20 Thread Carl D. Sorensen



On 6/20/09 2:17 PM, "Mark Polesky"  wrote:

> 
> 
> Here are some proposed additions to LM B. Scheme tutorial

Good for you!  Thanks!

> 
> ***new paragraph and example:
> Multiple consecutive scheme expressions in a music file can be
> combined using the *begin* operator. This reduces the number of
> hash marks to one. However, within such a combined expression,
> LilyPond comments ("%" and "%{ %}") will produce errors.
> 
> #(begin
> 
> (define foo 0)
> (define bar 1)
> 
> )
> 

I think you should split up the two concepts in the above:

1) LilyPond comments can't be included in Scheme expressions

2) (begin ... ) is used to combine sequential Scheme expressions

LilyPond comments will fail inside of *any* Scheme expression, not just
(begin ... )

i.e. 

#(define (foo bar baz)
(let ((bar 2)
% This is a LilyPond comment
  (baz 3))
% This is too
  (+ bar baz)))

Will also throw errors.

You may also wish to include a third concept:

3) if # is followed by (, the parser remains in Scheme mode until a matching
) is found.

> ***new sentence and example:
> Comments in Guile Scheme are entered as follows:
> 
> ; this is a single-line comment
> 
> #!
> this a (non-nestable)
> guile-style block comment
> !#

I think we shouldn't introduce block comments, but I don't feel strongly
about it.

If we do introduce block comments, we should mention that the LilyPond
source doesn't use block comments.



> 
> ***back to current:
> For the rest of this section, we will assume that the data is
> entered in a music file, so we add #s everywhere.
> 
> 
> 
> 
> 
> ...and maybe at the end, some info regarding using the display
> function within a music file to emulate a guile "sandbox".
> See the thread at:
> http://lists.gnu.org/archive/html/lilypond-devel/2009-06/msg00436.html
> 

Also, probably add that you can get a guile interpreter in most systems by
opening a terminal window and typing guile.



This is good stuff, Mark.  Thanks for your contributions!


Carl



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: texi2html web page, second attempt

2009-06-20 Thread Carl D. Sorensen



On 6/20/09 2:21 PM, "Graham Percival"  wrote:

> On Sat, Jun 20, 2009 at 09:57:20AM -0700, Patrick McCarty wrote:
>> On Sat, Jun 20, 2009 at 01:54:30PM +0200, John Mandereau wrote:
>>> Le 13/06/2009 20:14, Graham Percival a écrit :
>>> 
 - also, if we end up going this route, somebody (I'm willing to do
   it, although I wouldn't mind delegating this :)  needs to make
   the nagivation menu show the current subsections in a second
   list.  (like the current webpage)
>>> 
>>> This is possible, but I don't know how much Perl hacking it requires. It
>>> would be nice to generate the (sub)TOC as a drop-down menu activated by
>>> mouse hover/click BTW.
>> 
>> I agree.
> 
> Really?  I prefer the current webpage's display, since you can see
> all the sub-sections of each section.  (or all the sections of
> each "chapter")
> 
> I mean, if somebody is reading Introduction->Features, I think
> it'd be nice to see Introduction->Examples and Introduction->Crash
> course, without having to hover the mouse around.

Me, too.  I much prefer having the TOC available to having it hidden.


Carl



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: texi2html web page, second attempt

2009-06-20 Thread Graham Percival
On Sat, Jun 20, 2009 at 03:59:59PM -0700, Patrick McCarty wrote:
> On Sat, Jun 20, 2009 at 1:21 PM, Graham
> Percival wrote:
> > That was actually the default for the init file -- it took me
> > about an hour to figure out how to hack-comment-out lines so it
> > wouldn't do this!  :)
> 
> I started from scratch on the CSS.  There might be some things I
> forgot, but see what you think.  If this is an improvement (for now),
> I can send a patch.  It should render decently.  Not sure if the
> submenus will work in IE<=6, but you probably don't use those
> browsers.  :-)
> 
> http://uoregon.edu/~pmccarty/web-lily/lilypond-general_1.html

Looks great!  I copied the CSS verbatim and dumped it into git; if
you have access you can push further changes directly.  If not,
I'm more than happy to commit them for you.

Ok, I'm thinking about announcing this on -user on Monday or
Tuesday.  There's a bit more I want to write for the content, and
if you want to make any more CSS changes, that's fine.  The idea
is just to get initial feedback and any major feature requests, so
it doesn't need to be perfect by any stretch of the imagination.
:)

Cheers,
- Graham


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: proposals for LM B. Scheme tutorial

2009-06-20 Thread Werner LEMBERG
>> The formatting is bad.
>>
>> > #(begin
>> >(define foo 0)
>> >(define bar 1))
>>
>> Parentheses are never left alone on a line.
> 
> I respectfully* disagree: [...]

Well, putting trailing parentheses into separate lines is useful while
writing code -- I do this too, but finally they get condensed into a
single line.  We do this everywhere in the SCM files.

As a rule, we indent Scheme code almost always in the same way as the
Scheme mode of Emacs does.  There, a simple TAB keypress indents
correctly.  Additionally, Emacs provides functions to find the
matching opening parenthesis; another reason to condense parentheses.


Werner


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: texi2html web page, second attempt

2009-06-20 Thread Graham Percival
On Sat, Jun 13, 2009 at 12:00:21PM -0700, Patrick McCarty wrote:
> On Sat, Jun 13, 2009 at 11:14 AM, Graham
> Percival wrote:
> > To counter-act the "texi2html looks boring" idea, here's a new
> > version:
> > http://percival-music.ca/blogfiles/out/lilypond-general_1.html
> 
> Cool!  I think this is a definite improvement to the website's
> organization.  I really wish we could port everything to XHTML, since
> it makes designing a little easier, but I guess we will have to use
> HTML 4.0 Transitional.

Well, we _could_ make it XHTML by hacking texi2html... but I think
the current HTML version is fine.  I'll just note in passing that
this one more advantage to using texinfo as an intermediate
language: we can export it to whatever backend(s) we want,
assuming we're willing to write those backend(s).  :)

> I would be willing to work on the CSS when everything is ready.  There
> are some major annoyances that texi2html has (like using  class="menu" ...> instead of something more reasonable like  class="menu">), but these issues can be worked around.

That's (relatively) easily changed (actually I changed it already
for the TOC in the init file).  If there's any particular
annoyances, let me know and I'll look through the init file and/or
the texi2html source.

> > - we also probably want to remove the section-name from
> >  the page.  Not a big deal.
> 
> Or we could just hide it.  I'm already hiding "The music typesetter"
> on this page, because I could not think of a good place to put it:

Up to you, as the graphics designer.  :)

Cheers,
- Graham


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: texi2html web page, second attempt

2009-06-20 Thread Graham Percival
On Sat, Jun 20, 2009 at 01:54:30PM +0200, John Mandereau wrote:
> Le 13/06/2009 20:14, Graham Percival a écrit : 
> > To counter-act the "texi2html looks boring" idea, here's a new
> > version:
> > http://percival-music.ca/blogfiles/out/lilypond-general_1.html
> 
> You made the proof of concept of using texi2html to write a website in
> Texinfo; this is nice and promising, I'm now almost convinced that we
> could adopt this technical design.  However, I'm sure I want to update
> the translation infrastructure first, as it will be reused in the
> website if we adopt this design: remember that it's about translating
> node names and section titles directly in the translated files, so it
> would well take between 10 and 15 hours to hack the scripts and apply
> and check the changes to existing translations.

Ok; I have no problems waiting for this.  Remember I was talking
about having the English version done this month, and translations
around Aug.

There should be a lot of shared infrastructure between the new
website and the main docs... actually, since they're all texinfo,
I'm not certain if there'd be *any* difference.

> > 2)  Apologies to people who worked on the perl texinfo init file
> > for the docs.  I hacked it up horribly to get this version.  
> 
> You could thank them too :-D

I think I thanked them when they did the original version during
GDP.  And we wouldn't want to double-thank people, after all!

Cheers,
- Graham


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: working on the new website

2009-06-20 Thread Graham Percival
On Tue, Jun 16, 2009 at 09:14:50AM +0200, Francisco Vila wrote:
> 2009/6/16 Graham Percival :
> > Oh, and does anybody have any immediate comments (or experience)
> > with blind users?
> 
> My immediate comment is that making a web page accessible by blind
> users involves putting a section in the CSS file that defines the
> voice styles for the spoken interface, if any. The section is specific
> for the aural media and an usable example would be the following.

Ok, I've added this to git... although I'm not certain if it's
necessary.  I mean, wouldn't text-to-speech programs have their
own presets which read the tags at different pitches / volumes /
etc?  If they do, then I'm not certain if overriding those default
values (which the users would presumably be familiar with).

Cheers,
- Graham


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: proposals for LM B. Scheme tutorial

2009-06-20 Thread Carl D. Sorensen



On 6/20/09 3:18 PM, "Mark Polesky"  wrote:

> 
> 
> Nicolas Sceaux wrote:
>>>#(begin
>>> 
>>>(define foo 0)
>>>(define bar 1)
>>> 
>>>)
>> 
>> The formatting is bad.
>> 
>>> #(begin
>>>(define foo 0)
>>>(define bar 1))
>> 
>> Parentheses are never left alone on a line.
> 
> I respectfully* disagree:
> http://community.schemewiki.org/?scheme-style#H-189ddlj

When I followed the link, it agreed with Nicolas, with one exception, which
is the creation of a list that may be extended.

I don't think of a (begin ... ) as a "list that may be extended", but rather
as a sequence of statements.

Also, the exception should be used *rarely*.  And a rare exception should
not be shown in the Learning Manual.  This is a place for the rules.

The syntax you've used is a c structure in Scheme; as much as c programmers
think it's right, Scheme programmers think it's wrong.
> 
> Though I think it might depend on the size of the code within the
> #(begin ...). When I have many screens worth of consecutive scheme
> expressions lumped into a #(begin ...), the extra indenting (even
> just 2 spaces) seems unnecessary.

Scheme programmers are very unlikely to have many screens worth lumped into
a (begin ...); again, that's not very Schemey

> But even more to the point, when
> the last expression is a large procedure, and I want to block-
> comment it out for debugging, I don't want to accidentally remove
> the terminal parenthesis of the (begin ...).
> 
> #(begin
>   (define foo 0)
> #!
>   (define large-procedure ...))
> !#

It would generally be preferred (IMO, of course) to do

#(define foo 0)

#(define (large-procedure baz)
 
  foobar)

That is, in your .ly file, I think it's better to put each Scheme definition
in it's own #, rather than putting a huge Scheme file inside of a #(begin ).


Also, if you're commenting out stuff, it's easy with a parenthesis-matching
editor* to find the right place, insert a newline and a comment termination,
and go on your way.  And because you're not going to leave debugging stuff
in when you submit the code, it's easy to delete the comment and the newline
to get you back to good Scheme style.

Of course, even though Scheme has block comments, I can't remember *ever*
seeing them used by an experienced Scheme programmer.  The more typical way
to do a block comment for debugging is (if #f )

Just my opinion,

Carl 

*and a parenthesis-matching editor is a *REQUIREMENT* for Scheme.  If you
don't have one, you'll go crazy.





___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel