Re: Doc build failure: pngtopnm: Error writing single byte sample to file
On 2009.11.09., at 17:16, Graham Percival wrote: Oh, I see now. It's in Documentation/snippets/ Thanks for the info. well, I'm at a loss as to why it can't compile. I guess you could report it on bug-lilypond, and hopefully somebody who has OSX can test it as well. Reported! In the meantime, I tried to build the docs in the Lilybuntu virtual machine. All kinds of builds work like a charm, including specifying external binary. Though building the docs takes several hours to run, but I presume, on a virtual machine, that's not too much. Dénes ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: waf building
Le mardi 10 novembre 2009 à 00:36 +, Graham Percival a écrit : I'm mostly just pissed about the blddir stupidness. It's not the 1970s, folks! Adding the ui won't cause the source file to be too large for the punch card! Besides, one of python's claims to fame is that it's more readable than most other languages. Why the bloody mao would they throw that away to have stupid variable names like blddir ?!?! You're right. Ok, I'll go ahead with this. My mood will suffer, and therefore anybody on the lists with a thin skin will _also_ suffer, I've already (silently) suffered from this. John signature.asc Description: Ceci est une partie de message numériquement signée ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: waf building
Le samedi 07 novembre 2009 à 19:26 +, Graham Percival a écrit : I've got waf buliding contributor .html and .pdf in the dev/gperciva branch. I was pleasantly surprised to discover that waf supported a --targets= command-line, so we can specific an individual manual to build. I'm less happy that this appears to ignore the after=foo check, so none of the dependencies are checked. Please ignore my other reply on this technical point, which is inaccurate. IIUC, dependencies should not be specified with 'after' parameter, but a scanner that can be easily written reusing the one for TeX should find dependencies, then Waf should find either the dependencies as source files or output files produced by other tasks. I'm sorry again not for being more active, but adminstrative stuff for my PhD is burning my a** (direct translation from French). Best, John signature.asc Description: Ceci est une partie de message numériquement signée ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: waf building
On Tue, Nov 10, 2009 at 12:27:51PM +0100, John Mandereau wrote: Le samedi 07 novembre 2009 à 19:26 +, Graham Percival a écrit : I've got waf buliding contributor .html and .pdf in the dev/gperciva branch. I was pleasantly surprised to discover that waf supported a --targets= command-line, so we can specific an individual manual to build. I'm less happy that this appears to ignore the after=foo check, so none of the dependencies are checked. Please ignore my other reply on this technical point, which is inaccurate. IIUC, dependencies should not be specified with 'after' parameter, but a scanner that can be easily written reusing the one for TeX should find dependencies, then Waf should find either the dependencies as source files or output files produced by other tasks. waf book, chapter 5, Task execution order. Ways to control the order of tasks: - task groups - precedence constraints (before= after=) - file extension production (ext_in= ext_out=) - task1.set_run_after(task2) In the next page, it appears that dependencies in waf-language are source files required for the task. Yes, we might want to do some kind of scanner for dependencies, but to say run this rule before that rule -- such as generate version.itexi, by running the rule cunning named version.itexi -- I think the easiest thing is to use after or having a task group. (actually, I must admit that task groups are looking appealing) - Graham ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: CGI interface to lilypond
For an individual person, lilypond-book can already process html files, so there is nothing extra needed. Thank you. I think I didn't explain myself very well. My goal is to embed the lilypond source in HTML source. Something like this html head titleExample/title /head body This is my new song: img src=localorpublic/cgi-bin/lilypondmagic.cgi?\relative c { \clef bass c d e c } /body /html My understanding from http://lilypond.org/doc/v2.12/Documentation/user/lilypond-program/HTML#HTML is that lilypond-book by itself does not work like this and it not support this - a wrapper CGI application is required. To prove how this can work with LaTeX (and a CGI wrapper called mathtex), load this into your browser. html head titleExample/title /head body This is my new theorem: img src=http://www.forkosh.dreamhost.com/mathtex.cgi?\sqrt{x^2}=x; /body /html If you want to have it for a multi-user situation like a wiki, then search for lilypond wiki or mediawiki or similar terms on the mailist; it has been discussed before. This is slightly off-topic, but for everyone's benefit, this is what I know about the MediaWiki situation. An unsecure extension is available here http://www.mediawiki.org/wiki/Extension:LilyPond This works fine for private (intranet) wikis and for public wikis that are not notable enough to be subject to DoS attacks. For bigger, public wikis (notably Wikipedia), someone has implemented a secure, generic framework that renders music and other stuff http://wikisophia.org/wiki/Wikitex http://modtex.org My understanding is that development is almost done, but the project is currently on a hiatus. Thanks ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: CGI interface to lilypond
On Tue, Nov 10, 2009 at 10:50:43PM +0900, Ichiro Watanabe wrote: For an individual person, lilypond-book can already process html files, so there is nothing extra needed. My goal is to embed the lilypond source in HTML source. Something like this html head titleExample/title /head body This is my new song: img src=localorpublic/cgi-bin/lilypondmagic.cgi?\relative c { \clef bass c d e c } /body /html If you are writing the html yourself, then why do you want a cgi call? You get the desired output by running lilypond-book with the [verbose] option. It doesn't make any sense to regenerate the output every time somebody looks at the webpage. If you want to have it for a multi-user situation like a wiki, then search for lilypond wiki or mediawiki or similar terms on the mailist; it has been discussed before. This is slightly off-topic, but for everyone's benefit, this is what I know about the MediaWiki situation. If you don't want a multi-user situation, then I don't see the point of a cgi script...? This works fine for private (intranet) wikis and for public wikis that are not notable enough to be subject to DoS attacks. Yes, which is why I suggested that you look into safe mode. Cheers, - Graham ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: CGI interface to lilypond
If you are writing the html yourself, then why do you want a cgi call? I'm not necessarily writing the html myself. A CGI interface is useful for the same use cases that mathtex enables with LaTeX. It doesn't make any sense to regenerate the output every time somebody looks at the webpage. Images are not regenerated, they are generated once and then cached. For more details, see http://www.forkosh.dreamhost.com/source_mathtex.html Anyway, I take it that no such CGI interface exists then. I'll let you know of any developments on my side, thanks for now. Regards, Ichiro ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: Fixes issue 786, Extenders in lyrics stop prematurely if a single underscore is found.
I can't verify #800 here; the extender's still too short. You're right - I assumed 800 would be fixed because it looked like it was the same issue, but it seems unrelated. I've done some investigation, and am stumped so far. Can you check lyric-melisma-manual.ly? I've just run a regression test check and there's a missing hyphen following Ky, though the melisma is correct (see attached image). I'm working on it; I fixed the hyphen issue, but now there are a bunch of other lyrics that are spaced wrong. I'll keep investigating. Chris Snyder Adoro Music Publishing 1-616-828-4436 x800 http://www.adoromusicpub.com ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Code review/advice for accordion registers
I'm not topposting after getting some advice here, I tried coding some accordion register setting stuff. I have little enough available input on the best available options and names, no idea whatoever about Bayan (consequently, no Bayan bass here), and have failed to work with context-sensitive settings. For example, I'd like to have something like Voice.registerInstrument which I can independently set per Voice and which is inherited into subvoices and can be used with \set, \override etc. No idea how to do this. It also feels unclean to have to define this as macro, but short of using macros, I have no idea how to feed the requisite material into define-markup-command, itself a macro. All of this looks pretty ugly. This defines both music command and markup command (more important at a later stage when the music command will simultaneously change the midiRegisterInstrument of the Voice or something while the markup command does just markup). Ok, any advice how to wedge material into new Voice context properties? How to do that? % The default discant register set has been more or less modeled after % numeric Swiss notation like depicted in % URL:http://de.wikipedia.org/wiki/Register_%28Akkordeon%29, % omitting the slashes and dropping leading zeros. % % The names are basically three-digit numbers with the lowest digit % specifying the number of 16' reeds, the tens the number of 8' reeds, % and the hundreds specifying the number of 4' reeds. Without % modification, the specified number of reeds in 8' is in the symbol. % Newer instruments may have register choices between 8' with and % without cassotto. Notationally, the central dot then indicates use % of cassotto. You can suffix the tens' digits 1 and 2 with + % or - to indicate clustering the dots at the right or left % respectively rather than centered. #(define defaultDiscant '((glyph . accordion.accDiscant) (reedbank (L . ((dots . ((0 . 0.5) (M . ((dots . ((0 . 1.5) (MM . ((dots . ((1 . 1.5) (MMM . ((dots . ((-1 . 1.5) (H . ((dots . ((0 . 2.5)) (register (1 (reedbanks L)) (10 (reedbanks M)) (11 (reedbanks L M)) (1+0 (reedbanks MM)) (1+1 (reedbanks MM L)) (1-0 (reedbanks MMM)) (1-1 (reedbanks MMM L)) (20 (reedbanks MMM MM)) (21 (reedbanks MMM MM L)) (2+0 (reedbanks MM M)) (2+1 (reedbanks MM M L)) (2-0 (reedbanks MMM M)) (2-1 (reedbanks MMM M L)) (30 (reedbanks MMM MM M)) (31 (reedbanks MMM MM M L)) (100 (reedbanks H)) (11 (reedbanks H L)) (110 (reedbanks H M)) (111 (reedbanks H L M)) (11+0 (reedbanks H MM)) (11+1 (reedbanks H MM L)) (11-0 (reedbanks H MMM)) (11-1 (reedbanks H MMM L)) (120 (reedbanks H MMM MM)) (121 (reedbanks H MMM MM L)) (12+0 (reedbanks H MM M)) (12+1 (reedbanks H MM M L)) (12-0 (reedbanks H MMM M)) (12-1 (reedbanks H MMM M L)) (130 (reedbanks H MMM MM M)) (131 (reedbanks H MMM MM M L) % The default Bass definitions have been modeled after the article % URL:http://www.accordions.com/index/art/stradella.shtml % originally appearing in Accord Magazine #(define defaultStdBass '((glyph . accordion.accStdbase) (register (Soprano (reedbanks Soprano)) (Alto (reedbanks Alto Soprano)) (Tenor (reedbanks Tenor Alto Soprano)) (Master (reedbanks Bass Tenor Contralto Alto Soprano)) (Soft Bass (reedbanks Bass Tenor Contralto)) (Soft Tenor (reedbanks Tenor Alto)) (Bass/Alto (reedbanks Bass Alto Soprano))) (reedbank (Soprano . ((dots . ((0 . 3.5) (Alto . ((dots . ((0 . 2.5) (Contralto . ((dots . ((1 . 2) (Tenor . ((dots . ((0 . 1.5) (Bass . ((dots . ((0 . 0.5 % The default Free Bass is modeled after the default Discant register % description. #(define defaultFreeBass '((glyph . accordion.accFreebase) (reedbank (L . ((dots . ((0 . 0.5) (M . ((dots . ((0 . 1.5)) (register (1 (reedbanks L)) (10 (reedbanks M)) (11 (reedbanks L M) #(define-macro (registerSetter name value) `(begin (define-markup-command (,name layout props name) (string?) (let* ((instrument ,value) (register (ly:assoc-get name (ly:assoc-get 'register instrument))) (reedbanks (ly:assoc-get 'reedbank instrument))) (interpret-markup layout props (let markup-builder ((dots (or (ly:assoc-get 'dots register) (append-map (lambda (x) (ly:assoc-get 'dots (ly:assoc-get x reedbanks))) (ly:assoc-get 'reedbanks register (result (markup #:musicglyph (ly:assoc-get 'glyph instrument (if (null? dots) result (markup-builder (cdr
\quoteDuring ignored in MIDI generation
Currently, if music is quoted using \quoteDuring, it does not generate any output in MIDI format. Attached is a sample file. While the PDF output contains the quoted notes (note that they are NOT cue notes, but real quotes), but the MIDI output is silent. Unfortunately, I haven't found the code where quoted voices are ignored in the performers... Can you point me to the spot where one would look for a solution? Cheers, Reinhold -- -- Reinhold Kainhofer, reinh...@kainhofer.com, http://reinhold.kainhofer.com/ * Financial Actuarial Math., Vienna Univ. of Technology, Austria * http://www.fam.tuwien.ac.at/, DVR: 0005886 * LilyPond, Music typesetting, http://www.lilypond.org \version 2.13.7 quoteMe = \relative c'' { \repeat unfold 16 { fis8.[ g16] } } \addQuote quoteMe \quoteMe \score { \new Staff \relative c'' { c2 d | \quoteDuring #quoteMe {s2} d2 | \quoteDuring #quoteMe {s1} | c1 } \midi {} \layout {} }___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: Fixes issue 786, Extenders in lyrics stop prematurely if a single underscore is found.
Oops - comment for the 2nd patch set should be Fixed hyphens... Not sure what to do about issue 800 - it might be a bug in some other portion of the code that my earlier patch uncovered. http://codereview.appspot.com/150067 ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: Fixes issue 786, Extenders in lyrics stop prematurely if a single underscore is found.
Third time's a charm, hopefully. Patch Set 3, which has just been uploaded, fixes both 786 and 800 without adversely affecting any regression tests. (I spoke too soon about potentially uncovering an underlying bug - all of the bugs were mine) http://codereview.appspot.com/150067 ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: Code review/advice for accordion registers
David, Congratulations on putting this together. On 11/10/09 8:47 AM, David Kastrup d...@gnu.org wrote: I'm not topposting after getting some advice here, I tried coding some accordion register setting stuff. I have little enough available input on the best available options and names, no idea whatoever about Bayan (consequently, no Bayan bass here), and have failed to work with context-sensitive settings. For example, I'd like to have something like Voice.registerInstrument which I can independently set per Voice and which is inherited into subvoices and can be used with \set, \override etc. No idea how to do this. I don't think that there is any inheritance per se in LilyPond. Voices are all bottom contexts. So there aren't any subvoices. Voices are all peers at the bottom context level, IIUC. It also feels unclean to have to define this as macro, but short of using macros, I have no idea how to feed the requisite material into define-markup-command, itself a macro. All of this looks pretty ugly. If you look at scm/fret-diagrams.scm and scm/harp-pedals.scm you'll see that we didn't define these complex markups as combinations of markups. Instead we defined them as combinations of stencils. Stencils are graphical objects that are formatted for output, and they are wrapped inside of markups to provide an interface to .ly code. (This explanation is probably not perfect technically, but it works for me). I think if you used scheme code to combine stencils (rather than using the markup combination commands), you could avoid the def-macro part. I'm not saying you *need* to do this, but if it were me I'd at least try it. This defines both music command and markup command (more important at a later stage when the music command will simultaneously change the midiRegisterInstrument of the Voice or something while the markup command does just markup). Ok, any advice how to wedge material into new Voice context properties? How to do that? I'm not sure what you mean. What material do you want to wedge into Voice context properties? It seems to me like you could define a music function that would: A) Check the current midiInstrument; if it's not the one you want, change the midiInstrument. B) Call the appropriate markup function c) Send the appropriate notes to the midi performer (which, IIUC, may not be the notes that are notated on the staff). Is there something else that needs to be wedged into Voice context properties? HTH, Carl ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Span_arpeggio patch
Way back in January (10 months ago!!!), Chris Snyder was working on a patch for spanned arpeggios. http://thread.gmane.org/gmane.comp.gnu.lilypond.devel/19682 I was asked to shepherd this process, but I have apparently dropped the ball on doing so. As far as I can see, no patch was ever applied, although there is a patch in the -devel threads. http://thread.gmane.org/gmane.comp.gnu.lilypond.devel/19027/ A regression test is available here: http://temp.mvpsoft.com/ly/arpeggios/ As far as I can tell, this patch was never applied, nor had a final resolution, probably in part due to my losing track of it. What can I do to help close this issue? Thanks, Carl ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: Span_arpeggio patch
Carl Sorensen wrote: Way back in January (10 months ago!!!), Chris Snyder was working on a patch for spanned arpeggios. http://thread.gmane.org/gmane.comp.gnu.lilypond.devel/19682 I was asked to shepherd this process, but I have apparently dropped the ball on doing so. You didn't drop the ball - the patch I submitted was rejected as being the wrong approach. I offered to do a second take on it, but never finished (I got overwhelmed trying to wade through everything). I could give it another shot - I'm more familiar with the LilyPond code now. Chris Snyder Adoro Music Publishing 1-616-828-4436 x800 http://www.adoromusicpub.com ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: Span_arpeggio patch
On 11/10/09 2:57 PM, Chris Snyder csny...@adoromusicpub.com wrote: Carl Sorensen wrote: Way back in January (10 months ago!!!), Chris Snyder was working on a patch for spanned arpeggios. http://thread.gmane.org/gmane.comp.gnu.lilypond.devel/19682 I was asked to shepherd this process, but I have apparently dropped the ball on doing so. You didn't drop the ball - the patch I submitted was rejected as being the wrong approach. I offered to do a second take on it, but never finished (I got overwhelmed trying to wade through everything). I could give it another shot - I'm more familiar with the LilyPond code now. That would be great! Let me know how I can help. Thanks, Carl ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Build failure on OS X 10.6: libguile missing
Today, I updated to OS X 10.6.2 and wanted to see if it can build LilyPond or the docs. Unfortunately, already when running autogen.sh, I got the following error: ERROR: Please install required programs: libguile (libguile-dev, guile-devel or guile-dev package). The relevant output lines are: checking for guile-config... guile-config checking guile-config version... 1.8.7 checking guile compile flags... -I/opt/local/include -I/opt/local/include -D_THREAD_SAFE checking guile link flags... -I/opt/local/include -D_THREAD_SAFE -L/opt/local/lib -lguile -lltdl -L/opt/local/lib -lgmp -lm -lltdl checking libguile.h usability... yes checking libguile.h presence... yes checking for libguile.h... yes checking for scm_boot_guile in -lguile... no checking for scm_boot_guile... no checking GUILE rational bugfix... ok Guile 1.8.7 is installed via MacPorts. Of course /opt/local/bin is in the path. I thought of more solutions or workarounds: 1. install guile-dev via MacPorts - but there is no such package 2. make LilyPond see the libraries in /opt/local/lib, since libguile is in there - is it what configure needs? Is one of them reasonable or executable somehow? Thanks in advance, Dénes Harmath ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
serious doubts about waf
I'm just about ready to give up on waf. (in particular, I'm not doing anything else unless somebody convinces me otherwise) The dev/gperciva branch can build various manuals in HTML and pdf, including the texi2html init files and css stuff. However, you need to run it twice -- the first time you run waf, it will die. The second time it's just fine. The basic problem is that waf doesn't like to have directories in the build tree that aren't present in the source tree. After asking for help, the main author pointed out a not-really-documented function that allowed me to create an extra directory: http://groups.google.com/group/waf-users/browse_thread/thread/1e3774fdf387e083 However, this special function doesn't seem to work instantaneously... or else I'm doing something really weird in Documentation/wscript_build In the discussion (shown in the above link), it turns out that the waf API is going to change in version 1.6. This new version is only in the planning stages; no code exists for it... but I'm really starting to question if we really want to use waf. I have to admit that I was really shaken by the directory thing. I assumed that since it was python, I could do anything that python could do -- so making directories, moves files from directory to directory, etc. would be easy. Apparently not. I'm therefore considering wholeheartedly embracing automake. Yes, it's a bit clunky, but it's already a completely-working system (other than 2 or 3 things in the Issue tracker). I could replace bits and pieces of it to make it easier to understand + maintain. Cheers, - Graham ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: serious doubts about waf
On Tue, Nov 10, 2009 at 11:34:35PM +, Graham Percival wrote: I'm just about ready to give up on waf. In case anybody thinks this was rather fast, I spent 3-4 hours on Saturday doing waf, and 7-9 hours today. I'm not overly eager to throw away approximately 10 hours of work, but if it's not going to pan out, then better to stop it now rather than later. As Jan put it, a new build system should be a breath of fresh air. I'm not feeling fresh. Cheers, - Graham ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: Fixes issue 786, Extenders in lyrics stop prematurely if a single underscore is found.
On Tue, 2009-11-10 at 21:57 +, csny...@mvpsoft.com wrote: On 2009/11/10 20:00:00, joeneeman wrote: http://codereview.appspot.com/150067/diff/2003/3005#newcode113 lily/extender-engraver.cc:113: if (!melisma_busy (voice) !current_lyric_is_skip_ lyric_acknowledged_) Could you please add a sentence or two explaining why this test is here? Also, please add a comment explaining (at a high level) why we need to pass empty lyrics to the hyphen and extender engravers. I'll try to explain both of these together. Here are the cases I'm addressing: I appreciate the explanation, but I'd really like to have a comment in the code. Basically, the problem was confusing enough that it required a few tries to get it right; therefore, it will be confusing to whomever looks at that bit of code in a few years. It would be nice to have a comment which gives the four cases you listed along with the desired behaviour for each case. It would be even better if the comment were self-contained, rather than referring to the history of the code. Thanks, Joe ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: serious doubts about waf
On Tue, Nov 10, 2009 at 3:58 PM, Graham Percival gra...@percival-music.ca wrote: On Tue, Nov 10, 2009 at 11:34:35PM +, Graham Percival wrote: I'm just about ready to give up on waf. In case anybody thinks this was rather fast, I spent 3-4 hours on Saturday doing waf, and 7-9 hours today. I'm not overly eager to throw away approximately 10 hours of work, but if it's not going to pan out, then better to stop it now rather than later. As Jan put it, a new build system should be a breath of fresh air. I'm not feeling fresh. Though I haven't been following these discussions very closely, I have looked into automake a little bit. It sounds like we could make it work. At least, I think it would simplify makefile maintenance once we have initially set everything up. -Patrick ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
[PATCH] Source_file: remove mbrtowc() in favor of utf8_char_len()
Hello, I have uploaded a patch series to Rietveld for review: http://codereview.appspot.com/154046/show This addresses the following report: http://lists.gnu.org/archive/html/bug-lilypond/2009-10/msg1.html and keeps compatibility with the initial fix I made for this report: http://lists.gnu.org/archive/html/bug-lilypond/2009-10/msg00049.html The discussions from the archives provide a lot of background on the issues. Please let me know if you have any suggestions or know of an easier approach. Thanks, Patrick ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel