Re: Distributions upgrading to Python 3

2010-10-18 Thread Mark Polesky
Patrick McCarty wrote:
 Huh.  I've been following the Arch Linux development list
 for a while, but it didn't occur to me that they were
 doing something radically different than the recommended
 policy.

 This is the procedure they are following, and I think they
 are nearly finished with the task:

 http://wiki.archlinux.org/index.php/DeveloperWiki:Python_Todo_List

Their advice is pretty clear (quoted from above link):

Packages pointing at python binary
(lilypond appears in this list)

Packages which have /usr/bin/python or /usr/bin/env
python in their files and will need to change to python2 if
not already compatible with python-3.x.  Note that some of
these are fixed by just building against a python2 binary,
while others require some sed magic...

- Mark


  

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


Re: Distributions upgrading to Python 3

2010-10-18 Thread Valentin Villenave
On Mon, Oct 18, 2010 at 2:38 AM, Patrick McCarty pnor...@gmail.com wrote:
 Arch Linux will be migrating to Python 3 very soon, and I'm trying to
 figure out what to do with regard to LilyPond's build system.  I don't
 know if Arch Linux is the first distribution upgrading to Python 3,
 but this migration will be happening any day now.

Hi Patrick,

I'm not sure if you're subscribed to Arch mailing lists, but it seems
to be causing a bloody mess amongst users and contributors. (I'm not
following Arch's ML, but the same situation is happening on Frugalware
MLs). I *highly* doubt any other distro (especially mainstream
distros, not even Fedora) will consider migrating anytime soon.

Cheers,
Valentin

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


TODO in vocal

2010-10-18 Thread Trevor Daniels

Valentin

There's a TODO in vocal.itely that I don't understand:

902 @c TODO: document \new Staff  Voice \lyricsto  bug

If it really is a bug then we shouldn't be documenting
it anyway, but I'd like to know what it means first.

Do you know which bug it is referring to?

Trevor



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


Re: Build: another hack for translations (fix 1323). (issue2520041)

2010-10-18 Thread John Mandereau
AFAICT after a few hours of fiddling this issue is fixed, let's wait for
release to verify it (and not hopefully reopen it :-P).  Let me know how
is current master.  I've built and have checked both online and offline
targets, both split and big-page manuals, both docs in English and
Italian (so I've checked 8 output files).  You may ignore details below
to save time.

Il giorno lun, 18/10/2010 alle 00.35 +0100, Graham Percival ha scritto:
 Ok.  A few things spring to mind:
 - maybe the DEPTH environment variable isn't always set to the
   depth of the git source tree?  I mean, that would be profoundly
   messed up, but this might explain why the offline docs
   (normally, before today at least) work?  I mean, maybe the
   GNUmakefile in the translation pass in the depth-1 ?

It could be, but but it's not the case, see

find -name 'GNUmakefile*' -or -name '*.make' |xargs grep -B3 -n --color DEPTH


 - maybe there's something else in postprocess.py (or some related
   file) which automatically removes a ../ layer from the
   translations?  I think this is much more likely.  But if this
   is true, then fixing the my $reldir line in the texi2html
   init is going to make the later fix produce broken links.

AFAICS it's no longer the case in current master branch.  I suspect that
there used to be a kind of something you decribe that used to caught the
URLs for back to documentation index, but I can't find it in the
makefiles or *.py files in current master Git tree (I grepped for
'\.\.').

Cheers,
John


signature.asc
Description: This is a digitally signed message part
___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: TODO in vocal

2010-10-18 Thread Trevor Daniels


Valentin Villenave wrote Monday, October 18, 2010 1:47 PM

On Mon, Oct 18, 2010 at 12:03 PM, Trevor Daniels 
t.dani...@treda.co.uk wrote:

There's a TODO in vocal.itely that I don't understand:

902 @c TODO: document \new Staff  Voice \lyricsto  bug

If it really is a bug then we shouldn't be documenting
it anyway, but I'd like to know what it means first.

Do you know which bug it is referring to?


I don't know, it seems that Han-Wen added it in the first place:
http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=commitdiff;h=7fd51755d9bdf40766a612b3c3e9a00f68238082

Of course, we didn't use the tracker back then, so it's hard for 
me to

pinpoint what he was referring to. Perhaps something like
http://lists.gnu.org/archive/html/bug-lilypond/2004-01/msg00190.html
or
http://lists.gnu.org/archive/html/bug-lilypond/2004-01/msg00276.html
?


Well, neither of those problems still exist ...


Anyway, back then lyricsto had just appeared (replacing
\newaddlyrics), the syntax was still quite different from what we 
now

know, so I guess this todo: can just go away quietly.


.. so, yes, I'll just quietly remove this TODO

Trevor



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


Re: font defects in scripts.varsegno and accordion.push

2010-10-18 Thread Werner LEMBERG

I wrote:

 I've attached fontforge images of two broken glyphs; [...]

Listmaster, please approve this mail sitting in the queue!


Werner

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


Re: Distributions upgrading to Python 3

2010-10-18 Thread Patrick McCarty
On Mon, Oct 18, 2010 at 2:50 AM, Valentin Villenave
valen...@villenave.net wrote:
 On Mon, Oct 18, 2010 at 2:38 AM, Patrick McCarty pnor...@gmail.com wrote:
 Arch Linux will be migrating to Python 3 very soon, and I'm trying to
 figure out what to do with regard to LilyPond's build system.  I don't
 know if Arch Linux is the first distribution upgrading to Python 3,
 but this migration will be happening any day now.

 I'm not sure if you're subscribed to Arch mailing lists, but it seems
 to be causing a bloody mess amongst users and contributors. (I'm not
 following Arch's ML, but the same situation is happening on Frugalware
 MLs). I *highly* doubt any other distro (especially mainstream
 distros, not even Fedora) will consider migrating anytime soon.

It's not really creating much controversy yet, but as with everything,
once python3 and all of the rebuilds hit the main repos (today or
tomorrow), there will probably be mass confusion.  :P

Here is the new announcement draft thread from today:
http://mailman.archlinux.org/pipermail/arch-dev-public/2010-October/018195.html

-Patrick

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


Re: font defects in scripts.varsegno and accordion.push

2010-10-18 Thread Carl Sorensen
On 10/18/10 9:21 AM, Werner LEMBERG w...@gnu.org wrote:

 
 
 I wrote:
 
 I've attached fontforge images of two broken glyphs; [...]

Werner,

Can you open an issue directly on the tracker and post your attachments
there?

It seems that there ought to be three issues:

1) varsegno

2) accordion.push

3) Shape note heads at small font sizes.

I'll take over 2 and 3.

Thanks,

Carl



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


Re: Distributions upgrading to Python 3

2010-10-18 Thread Patrick McCarty
On Sun, Oct 17, 2010 at 11:19 PM, Mark Polesky markpole...@yahoo.com wrote:
 Patrick McCarty wrote:
 Huh.  I've been following the Arch Linux development list
 for a while, but it didn't occur to me that they were
 doing something radically different than the recommended
 policy.

 This is the procedure they are following, and I think they
 are nearly finished with the task:

 http://wiki.archlinux.org/index.php/DeveloperWiki:Python_Todo_List

 Their advice is pretty clear (quoted from above link):

 Packages pointing at python binary
 (lilypond appears in this list)

 Packages which have /usr/bin/python or /usr/bin/env
 python in their files and will need to change to python2 if
 not already compatible with python-3.x.  Note that some of
 these are fixed by just building against a python2 binary,
 while others require some sed magic...

Yes, but unfortunately, LilyPond needs special sed treatment, since
many substitutions are made *after* configure time.  I will need to
file a bug report...

Specifically, I am looking for a way to make life easier when building
LilyPond without package management (instead of running a sed script
over all the python scripts every time I need to use them).

A simple change to stepmake/aclocal.m4 would ease the process, but I
think I'll keep this as a local patch for a while...

Thanks,
Patrick

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


Re: Distributions upgrading to Python 3

2010-10-18 Thread Patrick McCarty
On Sun, Oct 17, 2010 at 5:59 PM, Graham Percival
gra...@percival-music.ca wrote:
 On Sun, Oct 17, 2010 at 05:38:20PM -0700, Patrick McCarty wrote:
 --) Two scripts still have /usr/bin/python lines
 (python/auxiliar/manuals_definitions.py, and scripts/build/pytt.py).
 Those should be changed to @PYTHON@, right?

 python/ yes, since it's not something that people call manually.
 But stuff in scripts/build/ shouldn't have @PYTHON@, otherwise
 it'll bork if you call it manually.

Um, I should have phrased my question differently:

Most python scripts in python/ and scripts/ use @PYTHON@,
@TARGET_PYTHON@, or /usr/bin/env python.  There are two exceptions,
one in python/ and one in scripts/, that use a fixed path to the
executable (/usr/bin/python).  If you do a git grep, you'll see what
I mean.

Are these two scripts special, or should they be changed to use @PYTHON@ ?

Thanks,
Patrick

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


Re: Distributions upgrading to Python 3

2010-10-18 Thread John Mandereau
Il giorno lun, 18/10/2010 alle 09.02 -0700, Patrick McCarty ha scritto:
 Yes, but unfortunately, LilyPond needs special sed treatment, since
 many substitutions are made *after* configure time.  I will need to
 file a bug report...
 
 Specifically, I am looking for a way to make life easier when building
 LilyPond without package management (instead of running a sed script
 over all the python scripts every time I need to use them).
 
 A simple change to stepmake/aclocal.m4 would ease the process, but I
 think I'll keep this as a local patch for a while...

I don't understand the issue; can't you just set PYTHON=python2 when
calling configure, and in case you need some scripts in auxiliar call
them by prepending python2 instead of relying on the shebang?

If you're afraid of forgetting to pass these options, a solution is to
define a couple of bash aliases in an shell environment dedicated for
lily development.

Best,
John


signature.asc
Description: This is a digitally signed message part
___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Distributions upgrading to Python 3

2010-10-18 Thread Patrick McCarty
On Mon, Oct 18, 2010 at 9:17 AM, John Mandereau
john.mander...@gmail.com wrote:
 Il giorno lun, 18/10/2010 alle 09.02 -0700, Patrick McCarty ha scritto:
 Yes, but unfortunately, LilyPond needs special sed treatment, since
 many substitutions are made *after* configure time.  I will need to
 file a bug report...

 Specifically, I am looking for a way to make life easier when building
 LilyPond without package management (instead of running a sed script
 over all the python scripts every time I need to use them).

 A simple change to stepmake/aclocal.m4 would ease the process, but I
 think I'll keep this as a local patch for a while...

 I don't understand the issue; can't you just set PYTHON=python2 when
 calling configure, and in case you need some scripts in auxiliar call
 them by prepending python2 instead of relying on the shebang?

Thanks!  I didn't think of doing this...

-Patrick

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


Re: T1265 - Remove deprecation warnings when running with Guile V2 (issue2204044)

2010-10-18 Thread ianhulin44


http://codereview.appspot.com/2204044/diff/14001/flower/include/guile-compatibility.hh
File flower/include/guile-compatibility.hh (right):

http://codereview.appspot.com/2204044/diff/14001/flower/include/guile-compatibility.hh#newcode28
flower/include/guile-compatibility.hh:28: #define scm_to_unsigned(x)
scm_to_uint (x)
On 2010/10/08 02:35:44, Patrick McCarty wrote:

This macro is not needed, either, AFAICS.



If you say



   #define FOO 1



all instances of FOO are replaced with 1.



With this patch, you do away with the one instance of

scm_to_unsigned(x),

replacing it with scm_to_uint(x).  Since scm_to_unsigned(x) no

longer

appears in the code base (after applying this patch), this macro does

nothing.

Done.

http://codereview.appspot.com/2204044/diff/14001/flower/include/guile-compatibility.hh#newcode30
flower/include/guile-compatibility.hh:30: #else  // SCM_MINOR_VERSION 
6  SCM_MINOR_VERSION = 9
On 2010/10/08 02:35:44, Patrick McCarty wrote:

Just about :)



The comment is now redundant...



This should be



#else // SCM_MINOR_VERSION = 9


Done.

http://codereview.appspot.com/2204044/diff/14001/lily/dispatcher.cc
File lily/dispatcher.cc (right):

http://codereview.appspot.com/2204044/diff/14001/lily/dispatcher.cc#newcode195
lily/dispatcher.cc:195: }
On 2010/10/08 02:35:44, Patrick McCarty wrote:

Please fix the indentation here (revert to using a tab).


Done.

http://codereview.appspot.com/2204044/diff/14001/lily/include/lily-guile-macros.hh
File lily/include/lily-guile-macros.hh (right):

http://codereview.appspot.com/2204044/diff/14001/lily/include/lily-guile-macros.hh#newcode146
lily/include/lily-guile-macros.hh:146: TYPE ## _ ## FUNC ##
_init_functions);
On 2010/10/08 02:35:44, Patrick McCarty wrote:

Revert back to tabs here.


Done.

http://codereview.appspot.com/2204044/

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


Re: T1265 - Remove deprecation warnings when running with Guile V2 (issue2204044)

2010-10-18 Thread pnorcks

LGTM.

Ian, please send me the git patch, and I'll apply it for you.

Thanks,
Patrick

http://codereview.appspot.com/2204044/

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


Re: font defects in scripts.varsegno and accordion.push

2010-10-18 Thread Werner LEMBERG

 Can you open an issue directly on the tracker and post your
 attachments there?

Done.  It's issue #1335.


Werner

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


Re: anybody understand the instrumentCueName docs?

2010-10-18 Thread Keith E OHara

On mailing list lilypond-user, Trevor Daniels wrote:


Keith E OHara wrote Wednesday, October 06, 2010 9:40 AM


I no longer see any reason to use instrumentCueName for the labels
that identify the instrument playing cue notes.


OK.  I'll see what you suggest.



I suggest (diff attached) removing the part about instrumentCueName in favor of 
a fuller example for \killCues.  The manual teaches markup elsewhere; the 
challenge with cue-note labels is to let the label appear with the cue notes in 
parts, but not in the score.

  bassoon = \relative c {
\clef bass
R1
\tag #'part {
  \clef treble
  s1*0^\markup { \tiny flute }
}
\cueDuring #flute #UP { R1 }
\tag #'part \clef bass
g4. b8 d2
  %{%}

Corresponding suggestions for vocal.itely will follow shortly.


Related changes (in the same diff) that you can take if you like :
1) \cueDuring #flute may be used *before* \addQuote flute \flute  appears 
in the source file, and knowing that empowers users to write parts that quote each other.

2) Two pieces of instruction were a bit vague :
It is possible to tag cued parts with unique names in order to process them in 
different ways.
[...] when cue notes end, the name of the original instrument should be printed, 
and any other changes introduced by the cued part should be undone.  This can be 
accomplished by using @code{\addInstrumentDefinition}

I think the intent was to teach how to handle clef changes (as in the thread 
http://lists.gnu.org/archive/html/lilypond-user/2008-02/msg00278.html)

As replacement I suggest, after the fuller \killCues example, :
 +The @code{\killCues} command removes only the notes and events
 +that were quoted by @code{\cueDuring}.  Other markup associated
 +with cues, such as clef changes and a label identifying the source
 +instrument, can be tagged for selective inclusion in the score;
 +see @ref{Using tags}.  Clef changes and instrument labels can be
 +collected into an instrument definition for repeated use, using
 +...@code{\addinstrumentdefinition} described in @ref{Instrument
 +names}.

3) The description of transposedCueDuring might have been wrong (or I 
interpreted it wrongly) in the case of transposing instruments.
My suggested replacement comes from experiment and inspection of 
quote-iterator.cc.

-Keith

staff.itely.diff
Description: Binary data
___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Distributions upgrading to Python 3

2010-10-18 Thread Graham Percival
On Mon, Oct 18, 2010 at 11:57 PM, Matthias Kilian
k...@outback.escape.de wrote:
 (unlurking, i didn't spend much time on lilypond recently)

 python/ yes, since it's not something that people call manually.
 But stuff in scripts/build/ shouldn't have @PYTHON@, otherwise
 it'll bork if you call it manually.

 But are those scripts supposed to be used without runnig autogen.sh
 (and implied configure) first?

Anything that's used to build the website (as opposed to the html
version of the docs) cannot rely on configure.  This affects
scripts/build/ create-*.py website_post.py bib2texi.py

... admittedly, those are getting called with
python scripts/build/foo.py
, probably precisely to avoid this problem.  So I guess that's not a concern.

I was incorrect in a previous email -- it's stuff in scripts/auxiliar/
that I run manually, not stuff in scripts/build/.  scripts/auxiliar/
makelsr.py node-menify.py strip-whitespace.py


  Would it be feasible to use #!/usr/bin/env @PYTHON@ or
  #!/usr/bin/env @TARGET_PYTHON@ for all Python scripts, using the
  basename of the appropriate Python executable in place of the Make
  variables?

 #!/usr/bin/env YOUR_FAVORITE_INTERPRETER

 should not be used ever. At least not for scripts that will be
 installed system-wide.

Why not?  IIRC, we had to add this to work around some problem in OSX.
 The discussion is in the email archives... hopefully somebody can dig
it out for us.

If there's a good reason not to do this, and a better way of solving
whatever problem we solved with /usr/bin/env python, I welcome a
change.

Cheers,
- Graham

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


Re: anybody understand the instrumentCueName docs?

2010-10-18 Thread Keith E OHara

On Mon, 18 Oct 2010 15:40:54 -0700, Keith E OHara wrote:


Corresponding suggestions for vocal.itely will follow shortly.



One thing worth discussing is that I use the verb to cue differently from the 
original author.

I believe that to cue is to *give* a signal for someone else to begin action.  
So the instrument playing just before the singer begins is the cue-ing 
instrument (or the quoted instrument) and the singer is cued.  Similarly, the 
notes are 'cue notes', which we might have hyphenated fifty years ago, rather 
than 'cued notes'.


Suggestions attached as a diff,
except that the cueWhile function is in a snippet, not the .itely, so the 
corresponding change is below :
cueWhile =
#(define-music-function
   (parser location instrument name dir music)
   (string? string? ly:dir? ly:music?)
#{
  \cueDuring $instrument #$dir {
\once \override TextScript #'self-alignment-X = #RIGHT
\once \override TextScript #'direction = $dir
s1*0-\markup { \tiny $name }
$music
  }
#}
  )

-Keith

vocal.itely.diff
Description: Binary data
___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Distributions upgrading to Python 3

2010-10-18 Thread Matthias Kilian
(unlurking, i didn't spend much time on lilypond recently)

On Mon, Oct 18, 2010 at 01:59:15AM +0100, Graham Percival wrote:
  --) Two scripts still have /usr/bin/python lines
  (python/auxiliar/manuals_definitions.py, and scripts/build/pytt.py).
  Those should be changed to @PYTHON@, right?
 
 python/ yes, since it's not something that people call manually.
 But stuff in scripts/build/ shouldn't have @PYTHON@, otherwise
 it'll bork if you call it manually.

But are those scripts supposed to be used without runnig autogen.sh
(and implied configure) first?

I may have some time during the next two weeks and arrange things
so those scripts will use the python detected by (or passed via
environment to) configure. If you want it.

  Would it be feasible to use #!/usr/bin/env @PYTHON@ or
  #!/usr/bin/env @TARGET_PYTHON@ for all Python scripts, using the
  basename of the appropriate Python executable in place of the Make
  variables?

#!/usr/bin/env YOUR_FAVORITE_INTERPRETER

should not be used ever. At least not for scripts that will be
installed system-wide. And if possible, not even for local scripts
(like scripts/build in lilypond).

Ciao,
Kili

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