Re: Denemo-feedback
Richard Shann writes: > Right now I have a new entry option nearly complete - playing on a MIDI > keyboard and then entering the rhythm. By hitting a MIDI keyboard key in the desired rhythm? -- Johan ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Schikkers List
2013/12/3 Jan Nieuwenhuizen > Federico Bruni writes: > > > So no download on the website (it's not working, as already reported), no > > source code anywhere. > > Unfortunately we can test the demo only > > Why is that unfortunate? The demo is really all there is, currently. > What would you do with the code? > > I'm not a coder, so nothing. I was just thinking that I may test it better if I could run it on my computer. I see that the demo doesn't work always: for example, now I refreshed the page and the canvas is empty (no staff). > > > It looks nice but it doesn't seem a reliable tool as online editor. For > > example, I've just lost the short example I typed few minutes ago. > > It's really meant as a demo currently, not as a reliable tool. The only > thing saved a couple of minutes before this message, was > > \relative { c' c'' e,,( f f) f g a' b,, f' d' \bar "|." } > > > I'd be curious to install it on my computer. > > > AFAICS, the edits can be made only in the GUI. Text input cannot be > > modified. > > That's right, that's not yet possible. My first priority is to find > a useful application for what is now this demo, code what's missing > and provide it. This `feature request' is anticipated and it would > be nice to see how many people actually want this feature. If you > really need it, the answer is: switch to Frescobaldi ;-) > > Sure, but the thing is: why showing the text input if you cannot modify it? It's a nice idea if the purpose of the application is teaching lilypond syntax by interacting with a GUI. Actually, it's a great idea: I would add a link in the website introduction once you feel that it's stable enough. OTOH if you want to create a GUI application, I'd remove the text input (at least, until you implement the "two-way edit"). I have a feature request that it may make this app special: note entry using a tablature instead of a staff. You choose the tuning and then enter numbers on each string, then the number should be turned into the right pitch. I guess this is not easy to implement. But it may attract users of Tuxguitar, Guitarpro and similar. > > The tie button works fine, while the slur button doesn't. > > Both buttons should be disabled when no slur or tie is possible. > The slur button is enabled when you make a horizontal selection. > > How can I make an horizontal selection? I think that yesterday somehow I managed to select more than a note, using Alt or Ctrl; but then slur didn't work. Today the demo is not working, so I'm stuck... Did I say that I'd like to install it on my PC? :-) ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: ly:context-mod? list to string
Urs Liska writes: > Am 03.12.2013 23:17, schrieb Urs Liska: >> Am 03.12.2013 20:39, schrieb David Kastrup: >>> Urs Liska writes: >>> When I use ly:context-mod? for a parameter in a music function a string as the final part will be cut to list items. if I write \function \with { comment = "This should be verified" } then the ly:context-mod? variable will hold ((assign comment This should be verified)) cdr-ing makes it (comment This should be verified) So what's the best (or canonic) way to make that (comment "This should be verified") again? >>> **Bing** Now it is so again. >>> >>> More seriously: that's what it always has been. Use "write" instead of >>> "display" and you'll probably see what you want to. >>> >>> If you use format for output, learn about the difference between ~a and >>> ~s formats. >>> >> >> Thanks for pointing this out. >> with "write" I indeed see what I want to. > > But when I try to pass that to a ly:message I'll get > > Wrong type argument in position 1 (expecting string): ("critical-remark") ly:message expects a string. You are passing it a list. That its first element is a string does not change that. The documentation says: LY_DEFINE (ly_message, "ly:message", 1, 0, 1, (SCM str, SCM rest), "A Scheme callable function to issue the message @var{str}." " The message is formatted with @code{format} and @var{rest}.") So you need a format string here. You can write (ly:message "~s\n" your-variable) here and get what you want output in Scheme form. If you don't want strings to be quoted, use ~a instead. >> Still driving me crazy all this ... > > +1 You know you are agreeing with yourself? When in doubt, use git grep on the LilyPond code base to find usage examples for functions. I see dak@lola:/usr/local/tmp/lilypond$ git grep ly:message Documentation/contributor/programming-work.itexi:@tab @code{(ly:message msg args input/regression/loglevels.ly:#(ly:message "Test message\n") lily/warn-scheme.cc:LY_DEFINE (ly_message, "ly:message", po/zh_TW.po:#. (ly:message (_ "Converting to `~a'...") scm/backend-library.scm:(ly:message (_ "Converting to `~a'...\n") pdf-name) scm/backend-library.scm:(ly:message (_ "Converting to ~a...") "PNG") scm/backend-library.scm: (ly:message (_ "Writing header field `~a' to `~a'...") scm/documentation-lib.scm: (ly:message (_ "Writing ~S...") x)) scm/framework-eps.scm: (ly:message (_ "Writing ~ scm/framework-svg.scm:(ly:message (_ "Updating font into: ~a") u scm/graphviz.scm:(ly:message (format #f (_ "Writing graph `~a'...") (port-fi scm/lily.scm:(else (ly:message "" scm/lily.scm:(ly:message scm/lily.scm:(ly:message scm/lily.scm:(ly:message (_ "Redirecting output to ~a...") log-name) scm/lily.scm:(ly:message "# -*-compilation-*-")) scm/lily.scm:(ly:message (_ "Invoking `~a'...\n") cmd) scm/music-functions.scm:(apply ly:message msg rest scm/safe-lily.scm: ly:message scm/song.scm: (ly:message "Writing Festival XML file ~a..." filename) scm/song.scm:(apply ly:message message (map pp args scm/stencil.scm: (ly:message "Writing ~a" outname) anf there are a few examples fitting your use case. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: ly:context-mod? list to string
Am 03.12.2013 23:17, schrieb Urs Liska: Am 03.12.2013 20:39, schrieb David Kastrup: Urs Liska writes: When I use ly:context-mod? for a parameter in a music function a string as the final part will be cut to list items. if I write \function \with { comment = "This should be verified" } then the ly:context-mod? variable will hold ((assign comment This should be verified)) cdr-ing makes it (comment This should be verified) So what's the best (or canonic) way to make that (comment "This should be verified") again? **Bing** Now it is so again. More seriously: that's what it always has been. Use "write" instead of "display" and you'll probably see what you want to. If you use format for output, learn about the difference between ~a and ~s formats. Thanks for pointing this out. with "write" I indeed see what I want to. But when I try to pass that to a ly:message I'll get Wrong type argument in position 1 (expecting string): ("critical-remark") Still driving me crazy all this ... +1 ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Denemo-feedback
On Tue, 2013-12-03 at 17:37 +0100, Noeck wrote: > Hi Richard, > > sorry for the old version. I now installed Denemo 1.1.0 from the > website. It can't use lilypond with it for some reason (it crashes I trust you don't mean that Denemo itself crashes? Just that LilyPond fails to execute? Without LilyPond running from inside Denemo you cannot navigate by clicking on the typeset score, drag slur shapes, etc... > when > I want to print) but I can look around and compare. In the Edit->Preferences->Externals tab you can set the path to lilypond. I believe I have seen this failure to find LilyPond too when testing the GNU/Linux binary, I don't know what that is due to. > > Many things have improved a lot: The sound plays nicely, the buttons > show no artefacts, the menus are readable. > I like the feature that one can click on the key signature to increase > the sharps or flats. > > The look is still similar to Windows 95. On the website I saw something > gnome-like but not in my installed version. Is that available? I don't understand this comment - what is the link? > > For my taste, there are too much buttons By "buttons" are you referring to those in palettes? - yes they are nearly all displayed at first. But if you close them down or hide individual buttons (right click) they will not come back. I keep just one line of buttons in the General Palette with those things I like to click on rather than type a key-press. > with a similar meaning. E.g. > all the slur and bracket buttons could be simplified as Frescobaldi > does: the slur spans the selected range of notes. The customizability of Denemo means that such a feature is easily added by the sort of user that customizes. I did even create such mouse-shortcuts some years ago, but found that for practical purposes hitting 7 to start a slur and then 8 to extend and 9 to reduce the slur was just so much quicker. (You set your own custom shortcuts by right clicking on the menu item). > Also, the buttons to > insert a note and change the current note to a different duration > duplicate things. Wouldn't it make sense to merge them (two different > modes ah, yes, Denemo had modes at one time too. Modal programs are pretty universally decried for tripping you up. > or a shift+click for changing). The combinations in use by default are Digit, Shift-Digit and Letter, Shift-Letter for durations and note names respectively, for inserting/changing respectively. > It would also be convenient to > move the current note up or down with the up/down key (it moves only the > cursor). You could set that up but then you would need a different key press to move the cursor rather than the note. I believe there is still a mouse-drag of notes up and down (setting the caps lock I think), but I wonder how much it is used. Mouse gestures can be customized by the user, but then they get in the way of more serious use (no one seriously enters music using a mouse - it is unbelievably slow). That was one of the reasons for that "Profile" dialog that was the first thing in the old 0.9.6 - if you chose "mouse user" you would get something like that. "LilyPond User" on the other hand would get more familiar short cuts and, more importantly, would get things like \repeat volta 2 { . } which to a user unaware of LilyPond is quite baffling - they just want to put :| in the score. > > I am still confused by the cursors, one | marking the point in time and > a square marking the current note/pitch. It is sometimes green, > sometimes blue. yes, the colors reflect the fill of the bar - this is explained in that first big tooltip on the main display area I think. > > It is not clear to me how a new measure is started. At the beginning it > worked (like in LP) automatically but later I had measures with more > than 4 beats (coloured in read) and the automatic bar line was missing. yes, Denemo does not stop you overfilling a bar if you want, but LilyPond will not typeset them unless you issue the appropriate command. If you enter notes in the middle of the bar Denemo will not bump other notes into the next bar - usually that makes no sense, and would be very annoying if you were adding notes just temporarily prior to deleting some others - after all, it could hardly go and get them back again. If such is a normal thing in your use you would want to set a short cut on the "Split the bar at the cursor" command. You just select the menu item and press the key you want as a short cut. > > The menus are very full which is probably a result of putting everything > in that is possible not everything by several orders of magnitude, but most things that Denemo has are there, just a few are hidden (e.g. LilyPond style repeats, because a novice would get in a mess). > (which is good to have). But an intelligent > reduction would be needed (imho). E.g. for slurs you have to search a > while: Notes/Rests > Markings > Slurs > Begin slur That is because until this release there was
Re: Denemo-feedback
On Tue, 2013-12-03 at 19:57 +0100, Noeck wrote: > Hi Richard, > > >> It can't use lilypond with it for some reason (it crashes > > I trust you don't mean that Denemo itself crashes? Just that LilyPond > > No Denemo does not crash. But the Print View tells me: INVALID! Lilypond > can not typeset this score. In this case open the View->Lilypond window and right click and choose "Print from visible LilyPond text", the start of the error will be highlighted in red, and the error message from LilyPond will appear in the LilyPond errors pane. You can move the cursor about in that pane and using the arrow keys and it should find the place in the Denemo score where something nasty has been introduced. If in doubt, please send me the file to look at. > > > In the Edit->Preferences->Externals tab you can set the path to > > lilypond. I believe I have seen this failure to find LilyPond too when > > testing the GNU/Linux binary, I don't know what that is due to. > > The lilypond path was set correctly in the preferences. In fact, it just > tells me that it fails and it does not show the preview. But I can > export a pdf. So LP is found somehow. > > >> The look is still similar to Windows 95. On the website I saw something > >> gnome-like but not in my installed version. Is that available? > > > > I don't understand this comment - what is the link? > > http://www.denemo.org/wp-content/uploads/2013/10/display7.png > > My version looks more like this: > http://www.denemo.org/wp-content/uploads/2013/10/display3.png These old screen shots were perhaps made with different window managers. All that sort of stuff is dependent on the "theme" I think. I never pay attention to it myself, it is (AFAIK) not specific to Denemo. > > >> For my taste, there are too much buttons > > > > By "buttons" are you referring to those in palettes? - yes they are > > nearly all displayed at first. But if you close them down or hide > > individual buttons (right click) they will not come back. > > That's what I mean. They come back each time I start the program. I think you must have used Ctrl-C to quit the program, in which case the palette changes are not saved. > > > ' should be octave up, do you have a non-qwerty keyboard? > I have a German keyboard layout which means the ä is my ' ;) that works. Did you have to execute "Save Command Set" to make the change permanent? It should ask you as you quit... This is off-topic for the LilyPond list, so I will continue in private, but it is still very useful for me to see how the program appears to newcomers. Richard ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: ly:context-mod? list to string
Am 03.12.2013 20:39, schrieb David Kastrup: Urs Liska writes: When I use ly:context-mod? for a parameter in a music function a string as the final part will be cut to list items. if I write \function \with { comment = "This should be verified" } then the ly:context-mod? variable will hold ((assign comment This should be verified)) cdr-ing makes it (comment This should be verified) So what's the best (or canonic) way to make that (comment "This should be verified") again? **Bing** Now it is so again. More seriously: that's what it always has been. Use "write" instead of "display" and you'll probably see what you want to. If you use format for output, learn about the difference between ~a and ~s formats. Thanks for pointing this out. with "write" I indeed see what I want to. Still driving me crazy all this ... ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: promoting LilyPond
Joseph Rushton Wakeling writes: > On 02/12/13 16:00, David Kastrup wrote: >> How about companies which cannot risk getting locked in to software that >> may stop being maintained in future? > > I'm not sure that's a selling point, either. As long as there's a > paying market, commercial software tends to keep getting maintained. You are aware that the Sibelius development team has been laid off due to financial problems of their parent company in spite of Sibelius having a paying market and turning a profit? > By contrast the risk with Lilypond is that it's vulnerable to the > continuing contributions of a fairly small set of core volunteers. Well, you can't lay them off, and you can't prohibit them from continuing to work on their software like the original authors of Sibelius who have no right to do anything with the sources written by themselves any more. And you can't prohibit anybody else from working on LilyPond in order to meet a company's needs. > Graham pointed out to me not so long ago that a problem with new > enthusiastic contributors is that they can come, "fix" some issue and > in the process break so much stuff that it costs far more time to > correct it than to just reject the contribution out of hand and have > one of the existing developers do the work. Trying to think about how > the codebase could be refactored so that this isn't likely to happen > seems to me to be a potentially productive way to expand and engage > the Lilypond community. No question about that. I think a necessary step would be to move to GUILE2 first because the costs and tradeoffs of refactoring stuff between C++ and Scheme will be different, so this is more or less a prerequisite to make decisions and be able to factor in their costs. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Percent repeat
On Sat, Nov 30, 2013 at 2:26 PM, Janek Warchoł wrote: > Hi, > > > 2013/11/30 Noeck : > > Hi, > > > > is this a bug or is there some reason why this should be correct: > > > > If I use a percent repeat in a customly timed measure (5/4 instead of > > 4/4), the repeat symbol lacks the dots and is placed to the left of the > > bar. If I write something before the repeat (a time signature or only > > <>), then the dots reappear and they are placed properly. > > looks like a bug to me. Forwarding to bug-lilypond. Thanks, Noeck and Janek - This has been entered as Issue 3703 : https://code.google.com/p/lilypond/issues/detail?id=3703&colspec=ID%20Type%20Status%20Stars%20Owner%20Patch%20Needs%20Summary Ralph ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: promoting LilyPond
On 02/12/13 16:00, David Kastrup wrote: How about companies which cannot risk getting locked in to software that may stop being maintained in future? I'm not sure that's a selling point, either. As long as there's a paying market, commercial software tends to keep getting maintained. By contrast the risk with Lilypond is that it's vulnerable to the continuing contributions of a fairly small set of core volunteers. At any rate, we need to pitch LilyPond to _ourselves_ and listen what annoys us. Particularly when explaining LilyPond to others and/or pitching it to them. A good rule of thumb is, to ask "What is easy to do by hand but hard to do with Lilypond?" But you can also add to that the question, "What is easy to do with Finale/Sibelius but hard to do with Lilypond?" and "What is hard to do with Finale/Sibelius and can we find a way to make it easy?" I don't suggest just casually asking those questions but really documenting extensively the evidence and experience of users. Some of those things will come up against David's "play to your strengths" remarks -- there are going to be things which are unavoidably difficult in order to make some other things very easy, and those will not be the same between Lilypond and WYSIWYG engraving software. But on the other hand, I am not convinced that the most practical way to improve Lilypond's future is not to look inside and focus on making sure the internal design of Lilypond's codebase is optimal from a future-development-and-maintenance point of view. Graham pointed out to me not so long ago that a problem with new enthusiastic contributors is that they can come, "fix" some issue and in the process break so much stuff that it costs far more time to correct it than to just reject the contribution out of hand and have one of the existing developers do the work. Trying to think about how the codebase could be refactored so that this isn't likely to happen seems to me to be a potentially productive way to expand and engage the Lilypond community. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Scores for the visually impaired
On 12/03/2013 09:09 AM, Frederick Bartlett wrote: Now that I'm *cough, cough* an expert LilyPond user, I want to explore something really difficult. My wife, a voice teacher, suffers from macular degeneration. Before her vision degrades so much that she can no longer read printed scores, I'd like to cobble together a system that * scans piano-vocal sheet music * creates a LilyPond file * controls a digital piano with LilyPond's midi output * displays the score in sync on a tablet at arbitrary magnification * controls tempi and dynamics by gestures and taps (and/or voice commands) * (bonus round) 'listens' to the singer and adjusts tempi and dynamics to match Judging by the success of Frescobaldi, most of this would seem to be feasible. And I have five years or so to figure all this out ... Has anyone on this list ever used Audiveris or OpenOMR? How about creating non-paged graphical output from LilyPond? Thanks for reading! Fred Hello Fred, I have a friend with macular degeneration, to the degree he literally holds his music touching his nose. I've created a template for use with LilyPond and Frescobaldi, which gives 2-3 bars per landscape letter sized page. I've adjusted things like slur line thickness, made fonts bold and so forth. You might open the file in Frescobaldi and "Save As a template". Hope it's useful! Cheers, Colin -- I've learned that you shouldn't go through life with a catcher's mitt on both hands. You need to be able to throw something back. -Maya Angelou, poet (1928- ) \version "2.17.29" \include "english.ly" \header { title = "Psalm 19" composer = \markup { \teeny "Benedetto Marcello" } tagline = ##f } \paper { #(set-paper-size "letter" 'landscape) system-system-spacing #'basic-distance = #6 ragged-last-bottom = ##t ragged-bottom = ##f ragged-right = ##f myStaffSize = #80 #(define fonts (make-pango-font-tree "Nimbus Sans Bold" "Nimbus Sans Bold" "Luxi Mono Bold" (/ myStaffSize 80))) print-page-number = ##f check-consistency = ##f } #(set-global-staff-size 80 ) tempoMark = { \once \override Score.RehearsalMark #'self-alignment-X = #LEFT \once \override Score.RehearsalMark #'break-align-symbols = #'(time-signature key-signature) \once \override Staff.TimeSignature #'break-align-anchor-alignment = #LEFT \mark \markup \bold \teeny "Allegro moderato" } global = { \tempoMark \key f \major \time 4/4 \override DynamicTextSpanner.style = #'none \crescTextCresc \dimTextDim \compressFullBarRests } bassVoice = \relative c { \global \dynamicUp \accidentalStyle "modern-voice-cautionary" \bar "||" } verse = \lyricmode { } \score { << \new Voice = "one" { \set midiInstrument = #"french horn" \clef "bass" \bassVoice } \new Lyrics \lyricsto "one" { \verse } >> \layout { \override BarNumber.self-alignment-X = #LEFT \override Staff.Stem #'thickness = #4.5 \override LyricText.font-name = #'"Nimbus Sans Bold" \override LyricText.font-size = #-4 \override LyricHyphen.thickness = #4.0 \override Hairpin.thickness = #4.0 \override Slur.thickness = #4.0 \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1 16 ) } } ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: ly:context-mod? list to string
Urs Liska writes: > When I use ly:context-mod? for a parameter in a music function a > string as the final part will be cut to list items. > > if I write > \function \with { comment = "This should be verified" } > > then the ly:context-mod? variable will hold > > ((assign comment This should be verified)) > > cdr-ing makes it (comment This should be verified) > > So what's the best (or canonic) way to make that (comment "This should > be verified") again? **Bing** Now it is so again. More seriously: that's what it always has been. Use "write" instead of "display" and you'll probably see what you want to. If you use format for output, learn about the difference between ~a and ~s formats. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: promoting LilyPond
On Tue, Dec 3, 2013 at 12:01 PM, Garrett McGilvray < garrett.mcgilv...@icloud.com> wrote: > > Now, to focus on a different point: the question as to whether a truly > fair comparison can be made only by professionals. I have no doubt that an > experienced professional in Finale (and I've ignored Sibelius because I've > never used it, so I have no opinion) could produce a better score than the > best that I can do in LilyPond. But I don't think each one's merit could be > totally measured based on what one is able to achieve with the greatest > skill and effort given at tweaks. I am fairly confident that if a person > tried an experiment to make a sample score in Finale that looked like > LilyPond's default output, he could nearly well achieve an identical look. > He would alter stem, line, slur thickness. He could manually position each > note to line up with LilyPond. He could develop a font that copycats > LilyPond's default. In the end, the two results would be identical, and > based on final output alone, the two options would therefore be judged > comparable. Of course, default LilyPond is not the target goal, but my > point is that it is not just about what one can do if he applies skill and > time to tweaking output. I know that beautiful results can be had from > either program with much tweaking on both sides, but default output should > be at least part of the comparison. > > Then we come to the fact that there are very many people who use either of > these programs who are not professionals, or even professionals who do not > have the time to tweak every score to perfection. In my case, I am very > much aware of many of the tools to tweak just about everything in Finale. > However, first, I don't want to have to fight with spacing at the minute > level, and secondly, as I was trained to read the music, not write it, I > won't know the finer rules of when and where I should override Finale's > default. On the one hand, I look at Finale's default output, and on the > whole I feel like it looks as it should. But then I look at LilyPond's > output and see, "Oh yeah, that does look more correct." That's the best > someone like me can do without knowing rules of engraving. So in my > circumstance, a comparison of what a professional can do is irrelevant. I > need to know rather what *I* can do or what I have time to do in one > program or another. So my own comparison of my own work in one versus my > own work in the other is exceedingly relevant and fair in helping me decide > which is right for me. That is especially true since I am a hobbyist doing > my own work for my own use. I'm the only one who needs to be pleased in > that case. > > And all of this is just to explain a comment I made about what aspect of > LilyPond appealed to me that made me give it a second chance. That seemed > to be the point of a thread about "promoting LilyPond." > Regarding what it takes to make a score look "right," I have some rather direct comparison between LP and Finale. When it comes to something as relatively-simple as an SATB hymn, my friends who use Finale have to do a number of things beyond note entry: * They constantly have to go back and fix horizontal note offsets anytime they make a change to notes so that the treble and bass clef notes line up vertically. * Because they work with shaped notes (and a custom shape note font at that), they have to do all sorts of tricks with stem lengths to avoid gaps between some of the noteheads and the base of the stem. * Any number of other manual tweaks for slurs and ties and such things. The bottom line is that I can transcribe a hymn note for note using direct text input into an LP template and fix any entry errors in the space of 20-30 minutes, with few, if any, of the problems my Finale counterparts encounter. The only manual tweak I use in the music is an override for the part combiner when I want three notes on a stem (such as a tenor and two bass notes, which happens rarely in the hymns I transcribe, and almost never in my own compositions). Everything else is handled by layout-block overrides, which are stored as a template. By comparison, one person (who does semi-professional Finale work and is quite proficient with Finale, from what I've seen) spends 2-3 times that time to get similar results. The only major defect I tend to see in my output, relative to the same hymn in Finale, is lyric spacing, particularly horizontal spacing. There are two features which, if they do not exist, would make the LP settings much better: 1. Horizontal spacing priority for lyrics rather than note durations. In other words, can we tell the horizontal spacing engine to space lyric anchor points more or less equally rather than strictly going by note durations? The big issue is when there are significant differences in note durations, such as when a half note appears in the midst of eighth notes. This creates a huge gap in the spacing. This is particularly ugly at the ends o
Re: Denemo-feedback
Hi Richard, >> It can't use lilypond with it for some reason (it crashes > I trust you don't mean that Denemo itself crashes? Just that LilyPond No Denemo does not crash. But the Print View tells me: INVALID! Lilypond can not typeset this score. > In the Edit->Preferences->Externals tab you can set the path to > lilypond. I believe I have seen this failure to find LilyPond too when > testing the GNU/Linux binary, I don't know what that is due to. The lilypond path was set correctly in the preferences. In fact, it just tells me that it fails and it does not show the preview. But I can export a pdf. So LP is found somehow. >> The look is still similar to Windows 95. On the website I saw something >> gnome-like but not in my installed version. Is that available? > > I don't understand this comment - what is the link? http://www.denemo.org/wp-content/uploads/2013/10/display7.png My version looks more like this: http://www.denemo.org/wp-content/uploads/2013/10/display3.png >> For my taste, there are too much buttons > > By "buttons" are you referring to those in palettes? - yes they are > nearly all displayed at first. But if you close them down or hide > individual buttons (right click) they will not come back. That's what I mean. They come back each time I start the program. > ' should be octave up, do you have a non-qwerty keyboard? I have a German keyboard layout which means the ä is my ' ;) that works. Cheers, Joram ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Schikkers List
… and another question: Can the Schikkers List code be found somewhere? As there are quite some ideas coming up on the page linked below, it would probably be interesting how Schikkers List solved some issues. Cheers, Joram >> See https://github.com/wbsoft/frescobaldi/issues/284 ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
ly:context-mod? list to string
When I use ly:context-mod? for a parameter in a music function a string as the final part will be cut to list items. if I write \function \with { comment = "This should be verified" } then the ly:context-mod? variable will hold ((assign comment This should be verified)) cdr-ing makes it (comment This should be verified) So what's the best (or canonic) way to make that (comment "This should be verified") again? TIA Urs ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Schikkers List
Am 03.12.2013 17:46, schrieb Urs Liska: > Am 03.12.2013 17:20, schrieb Johan Vromans: >> Federico Bruni writes: >> >>> I felt like working on a "reversed Frescobaldi": >>> input in the GUI, output text. :-) >> So what the world needs is a bidirectional Frescobaldi. +1 > See https://github.com/wbsoft/frescobaldi/issues/284 Hi Jan, how do you generate the visual output? Does this scale to larger scores? Is there a possibility to compile line by line to get smaller changes quicker? Or is your rendering independent of the LP typesetting? Cheers, Joram ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: improving LilyPond useability
>> Some criticism has been made about the length of the manual. I started >> with an IBM PS2 (1982) using a non-graphical interface Microsoft >> Word. The manual, if my addled memory is correct was somewhere around >> 300+ pages. > > And cut. > > "Wrangling down that attacking Rottweiler was actually not all that > hard. It boils down to the same grips and holds we used to employ for > killing lions when I was young." :D Yes, those are the people using LP and I am proud of you. But there are many more interested in music engraving with a different history. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: promoting LilyPond
On Dec 3, 2013, at 12:55 AM, Martin Tarenskeen wrote: > > On Mon, 2 Dec 2013, Garrett McGilvray wrote: > >> The reason that I came back for a second try was not that it was free, since >> I had already paid for "the real thing." I don't remember what made me >> think of it, but I remembered the essay on LilyPond's goal of superior >> engraving, and I decided to give it a second try. I fared better the second >> time. I have redone some of my past work in LilyPond, and I like the new >> results better. I doubt now I'll go back to Finale. > > I would be interested to see a comparison of some *good* scores engraved > using Finale (and/or Sibelius) and the same scores using LilyPond. Maybe you > can post some examples? > > It's easy to show a really bad Finale result and compare it with how much > better LilyPond can do this. > > But it is more fair to compare a good Finale/Sibelius score, prepared by a > skilled and experienced Finale/Sibelius user, and then try to use LilyPond to > do things better. If a true comparison between Finale and LilyPond is what you want, then I am surely not the person to provide it, because as you say, a truly fair comparison should be made by comparing results by people with much experience in each program. But if that is not what you want, then I can't help but feel that posting my own example of a "*good*" score of mine would be an invitation for everyone to critique what I did wrong in either version. The whole point of my post was not that LilyPond was better than Finale but rather to agree with David's comment that the fact that LilyPond is free should not be its main selling point, because that's not what drew me in. Whether or not LilyPond is better is irrelevant to my point, but rather that I perceived it to be better, and that is what eventually drew me in. Now, to focus on a different point: the question as to whether a truly fair comparison can be made only by professionals. I have no doubt that an experienced professional in Finale (and I've ignored Sibelius because I've never used it, so I have no opinion) could produce a better score than the best that I can do in LilyPond. But I don't think each one's merit could be totally measured based on what one is able to achieve with the greatest skill and effort given at tweaks. I am fairly confident that if a person tried an experiment to make a sample score in Finale that looked like LilyPond's default output, he could nearly well achieve an identical look. He would alter stem, line, slur thickness. He could manually position each note to line up with LilyPond. He could develop a font that copycats LilyPond's default. In the end, the two results would be identical, and based on final output alone, the two options would therefore be judged comparable. Of course, default LilyPond is not th e target goal, but my point is that it is not just about what one can do if he applies skill and time to tweaking output. I know that beautiful results can be had from either program with much tweaking on both sides, but default output should be at least part of the comparison. Then we come to the fact that there are very many people who use either of these programs who are not professionals, or even professionals who do not have the time to tweak every score to perfection. In my case, I am very much aware of many of the tools to tweak just about everything in Finale. However, first, I don't want to have to fight with spacing at the minute level, and secondly, as I was trained to read the music, not write it, I won't know the finer rules of when and where I should override Finale's default. On the one hand, I look at Finale's default output, and on the whole I feel like it looks as it should. But then I look at LilyPond's output and see, "Oh yeah, that does look more correct." That's the best someone like me can do without knowing rules of engraving. So in my circumstance, a comparison of what a professional can do is irrelevant. I need to know rather what *I* can do or what I have time to do in one program or another. So my own comparison of my own work in one versus my own work in the other is exceedingly relevant and fair in helping me decide which is right for me. That is especially true since I am a hobbyist doing my own work for my own use. I'm the only one who needs to be pleased in that case. And all of this is just to explain a comment I made about what aspect of LilyPond appealed to me that made me give it a second chance. That seemed to be the point of a thread about "promoting LilyPond." ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Is this ugly?
Several things can be made. #*# One. Put the slur down. http://lilypond.org/doc/v2.12/Documentation/user/lilypond/Curves.html#Slurs Still works in 2.17 as well. \version "2.17.96" { \slurDown a'8( b'4.) r2 } [image: Imágenes integradas 2] #*# Two. Put a silent note. I just use a random scale duration. Scaled correctly should gives the exact time duration :) http://www.lilypond.org/doc/v2.17/Documentation/notation/writing-rhythms.html#scaling-durations \version "2.17.96" { a'8( s8*4/8 b'4.*4/8) r2 } [image: Imágenes integradas 1] Marcos. 2013/12/3 Ed Gordijn > > > > But this example doesn't have the flag, which is the problematic issue > here. > > > > > > > Alternately, couldn't the stem of the B go up instead of down > > I would prefer slur down to avoid the flag and connect from note head to > the stem. > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > https://lists.gnu.org/mailman/listinfo/lilypond-user > > <><>___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Schikkers List
Am 03.12.2013 17:20, schrieb Johan Vromans: Federico Bruni writes: I felt like working on a "reversed Frescobaldi": input in the GUI, output text. :-) So what the world needs is a bidirectional Frescobaldi. See https://github.com/wbsoft/frescobaldi/issues/284 If any part of that rings a bell with anybody concerning his own skillset don't hesitate to join the effort ;-) Urs ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Denemo-feedback
Hi Richard, sorry for the old version. I now installed Denemo 1.1.0 from the website. It can't use lilypond with it for some reason (it crashes when I want to print) but I can look around and compare. Many things have improved a lot: The sound plays nicely, the buttons show no artefacts, the menus are readable. I like the feature that one can click on the key signature to increase the sharps or flats. The look is still similar to Windows 95. On the website I saw something gnome-like but not in my installed version. Is that available? For my taste, there are too much buttons with a similar meaning. E.g. all the slur and bracket buttons could be simplified as Frescobaldi does: the slur spans the selected range of notes. Also, the buttons to insert a note and change the current note to a different duration duplicate things. Wouldn't it make sense to merge them (two different modes or a shift+click for changing). It would also be convenient to move the current note up or down with the up/down key (it moves only the cursor). I am still confused by the cursors, one | marking the point in time and a square marking the current note/pitch. It is sometimes green, sometimes blue. It is not clear to me how a new measure is started. At the beginning it worked (like in LP) automatically but later I had measures with more than 4 beats (coloured in read) and the automatic bar line was missing. The menus are very full which is probably a result of putting everything in that is possible (which is good to have). But an intelligent reduction would be needed (imho). E.g. for slurs you have to search a while: Notes/Rests > Markings > Slurs > Begin slur The menues are difficult to browser, because the tooltip/hint is often very large and covers the menu. What is the reason for not chosing LP shortcuts for input: (=start slur, )=end it, 8=eigth note, r=rest etc. It would train people a bit to this well designed representation. , works to go down one octave, but ' does not go up. The dot button and the accidental buttons as well as key signatures and clefs work nicely. I am still not convinced but it is definitely in a better state and there were many improvements. Cheers, Joram ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Schikkers List
Federico Bruni writes: > I felt like working on a "reversed Frescobaldi": > input in the GUI, output text. :-) So what the world needs is a bidirectional Frescobaldi. -- Johan ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Is this ugly?
> > But this example doesn't have the flag, which is the problematic issue here. > > > > Alternately, couldn't the stem of the B go up instead of down I would prefer slur down to avoid the flag and connect from note head to the stem. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Scores for the visually impaired
Now that I'm *cough, cough* an expert LilyPond user, I want to explore something really difficult. My wife, a voice teacher, suffers from macular degeneration. Before her vision degrades so much that she can no longer read printed scores, I'd like to cobble together a system that - scans piano-vocal sheet music - creates a LilyPond file - controls a digital piano with LilyPond's midi output - displays the score in sync on a tablet at arbitrary magnification - controls tempi and dynamics by gestures and taps (and/or voice commands) - (bonus round) 'listens' to the singer and adjusts tempi and dynamics to match Judging by the success of Frescobaldi, most of this would seem to be feasible. And I have five years or so to figure all this out ... Has anyone on this list ever used Audiveris or OpenOMR? How about creating non-paged graphical output from LilyPond? Thanks for reading! Fred ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Is this ugly?
On Dec 3, 2013 5:56 AM, "Urs Liska" wrote: > > Am 03.12.2013 11:49, schrieb Karol Majewski: > >> Elaine Gould gives the following answer: >> >> When outer notes have opposite directions, move the slur at the stem end towards the noteheads so it does not tilt contrary to the direction of the pitches. >> > > But this example doesn't have the flag, which is the problematic issue here. > Alternately, couldn't the stem of the B go up instead of down? ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Schikkers List
Federico Bruni writes: > So no download on the website (it's not working, as already reported), no > source code anywhere. > Unfortunately we can test the demo only Why is that unfortunate? The demo is really all there is, currently. What would you do with the code? > I did a quick test. Funny, I felt like working on a "reversed > Frescobaldi": input in the GUI, output text. :-) :-) > It looks nice but it doesn't seem a reliable tool as online editor. For > example, I've just lost the short example I typed few minutes ago. It's really meant as a demo currently, not as a reliable tool. The only thing saved a couple of minutes before this message, was \relative { c' c'' e,,( f f) f g a' b,, f' d' \bar "|." } > I'd be curious to install it on my computer. > AFAICS, the edits can be made only in the GUI. Text input cannot be > modified. That's right, that's not yet possible. My first priority is to find a useful application for what is now this demo, code what's missing and provide it. This `feature request' is anticipated and it would be nice to see how many people actually want this feature. If you really need it, the answer is: switch to Frescobaldi ;-) > Also, the input code would be cleaner if it broke the line > at the end of each bar (possibly adding a bar check?). Agreed. > The tie button works fine, while the slur button doesn't. Both buttons should be disabled when no slur or tie is possible. The slur button is enabled when you make a horizontal selection. > Keep it up and keep us informed about the progress! I will. Thanks for looking at it. Greetings, Jan -- Jan Nieuwenhuizen | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.nl ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Pseudo [Re]-surrecting: is there a \RemoveEmptyLyrics
Dear all, I want to typeset a little hymn with two stanzas and a common chorus. Easy-peasy if the chorus begins after a line break, tedious tweaking otherwise. I am aware of http://www.lilypond.org/doc/v2.17/Documentation/snippets/vocal-music#vocal-music-vertically-centered-common-lyrics which uses manual Y-offsets for the chorus lyrics in their first line. This time, I'm in a situation where the LyricExtender of the first chorus line extends over the line break, and I need to give separate extra-Y-offset = #0 for the broken extender. Bah. Yes, I can and will figure out how to do it if necessary, but... ... isn't there a clean way to make a lyrics context (centered between two others) not to take any space where there are no lyrics? Like going hara-kiri and resurrecting when the lyrics start? Or making the surrounding lyrics commit suicide? Or fake an empty Y-extent in the common lyrics context until the lyrics actually start? I tried some approaches (see attached file): "Stealing" the Y-extent seems to work, but as soon as I go "backtodefaults" (line 6), the original Y-extent-calculation seems to carry over to the entire line, IIUC. Trying to kill the Y-extent of the stanza lyrics after they end changes nothing, unfortunately. Any ideas? I'm not sure at all if this is connected to the original question of the thread (removing an empty context), since AFAICS it only applies to entire lines of the context. A related discussion is, e.g., here http://lists.gnu.org/archive/html/lilypond-user/2013-08/msg00530.html with a link to http://www.hymnary.org/page/fetch/WASH1957/264/low which shows what I want to achieve; several other threads are around, but all of them end up with the recommendation of using the manual offset tweaking from the snippet. TIA, Alexander <>\version "2.17.96" backtodefaults = { %% \override LyricText.extra-spacing-height = #'(0.2 . -0.2) %% \override LyricText.vertical-skylines = #grob::always-vertical-skylines-from-stencil \override LyricText.Y-extent = #grob::always-Y-extent-from-stencil %% \override VerticalAxisGroup.nonstaff-nonstaff-spacing = %% #'((basic-distance . 0) %%(minimum-distance . 2.8) %%(padding . 0.2) %%(stretchability . 0)) } lyrI = \lyricmode { Yes -- ter -- day ly -- rics spa -- cing still was far a -- way. } lyrII = \lyricmode { Help! __ _ _ I need some -- bo -- dy! __ _ Help! __ _ _ } lyrRef = \lyricmode { Now \backtodefaults it looks as if that's goin' to stay... Oh I be -- lieve in Li -- ly -- pond! } mel = \relative c' { c8 c c2. | r4 c8 c c c c c | c8. c16 c2 r4 } melRef = \relative c' { r4 c8 c c c c c | c4 c8 c4. c4 | c c c c | c c8 c4. r4 } %% #(ly:set-option 'debug-skylines #t) #(set-default-paper-size "a5") \score { << \new Staff = "staff" { \new Voice = "mel" \mel \new Voice = "melRef" \melRef } \new Lyrics = "lyrI" \lyricsto "mel" \lyrI \new Lyrics = "lyrRef" \with { %% \override LyricText.extra-spacing-height = #'(+inf.0 . -inf.0) %% \override LyricText.vertical-skylines = ##f \override LyricText.Y-extent = ##f %% \override VerticalAxisGroup.nonstaff-nonstaff-spacing = #'() } \lyricsto "melRef" \lyrRef \new Lyrics = "lyrII" \lyricsto "mel" \lyrII >> } ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Denemo-feedback
Federico Bruni schrieb: >> >> On Tue, 2013-12-03 at 01:20 +0100, Noeck wrote: >> > several times now, I looked at Denemo (about twice a year for the >last 4 >> > years). So I can only share a first impression. As background info: >I >> > probably always will prefer text input and I like Frescobaldi very >much. >> > But I think that a GUI is definitely needed for the average >musician. My >> > approach: A GUI program should be self explaining - I did not read >the >> > manual. Denemo version 0.9.2 (latest ubuntu). >> > >HI Noeck > >I'm in the same situation: I'm more than happy with text input and >Frescobaldi, but I get interested in Denemo because I want to spread >the >use of LilyPond and I think that we need a GUI for this. > >Denemo is improved a lot in the last months. >One interesting feature of Denemo (missing in Frescobaldi, at the >moment) >is instant compile. It's on the wish list for some time. Another thing which will probably make instant compilation easier to realize is moving the music view to svg. On the long run this will lead to be able to graphically edit the result from a lilypond run, inserting the respective tweaks into the input files. Of course it will be a long way until that's near comprehensive, but if we start with tweaking slurs, fixing pitches or drawing spanners it will be more than a good start. > >I'm not using Denemo, sometimes I compile it and do a few tests just to >check the translation. >But I think that it's worth trying it again. > > > > >___ >lilypond-user mailing list >lilypond-user@gnu.org >https://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Denemo-feedback
> > On Tue, 2013-12-03 at 01:20 +0100, Noeck wrote: > > several times now, I looked at Denemo (about twice a year for the last 4 > > years). So I can only share a first impression. As background info: I > > probably always will prefer text input and I like Frescobaldi very much. > > But I think that a GUI is definitely needed for the average musician. My > > approach: A GUI program should be self explaining - I did not read the > > manual. Denemo version 0.9.2 (latest ubuntu). > HI Noeck I'm in the same situation: I'm more than happy with text input and Frescobaldi, but I get interested in Denemo because I want to spread the use of LilyPond and I think that we need a GUI for this. Denemo is improved a lot in the last months. One interesting feature of Denemo (missing in Frescobaldi, at the moment) is instant compile. I'm not using Denemo, sometimes I compile it and do a few tests just to check the translation. But I think that it's worth trying it again. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Schikkers List
2013/12/3 Jan Nieuwenhuizen > Federico Bruni writes: > > > It was hosted on github years ago, but now I see that last update is 3 > years > > ago. > > Yes. > > So no download on the website (it's not working, as already reported), no source code anywhere. Unfortunately we can test the demo only > > The demo is not working on Chromium 31.0.1650.57 > > It was down. Please try again? > Jan > I did a quick test. Funny, I felt like working on a "reversed Frescobaldi": input in the GUI, output text. :-) It looks nice but it doesn't seem a reliable tool as online editor. For example, I've just lost the short example I typed few minutes ago. I'd be curious to install it on my computer. AFAICS, the edits can be made only in the GUI. Text input cannot be modified. Also, the input code would be cleaner if it broke the line at the end of each bar (possibly adding a bar check?). The tie button works fine, while the slur button doesn't. Keep it up and keep us informed about the progress! Thanks Federico ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Other programming languages & LilyPond
Joseph Rushton Wakeling writes: > On 02/12/13 22:20, David Kastrup wrote: >> Scheme _is_ its scripting language. > > How much scope is there for creating a stable "scripting API" which > could be used via Scheme (default) or any arbitrary language of > choice, so long as someone writes bindings for that language? > > I ask because in our earlier discussion about tweaking, we discussed > how large numbers of tweaks render a score effectively tied to a given > version of Lilypond. But if there can be a promise, "This scripting > API will be future-proof," then maybe that kind of impact can be > reduced, and a side benefit would be the potential to script with > languages other than Scheme. The "scripting API" are basically the music expressions. The same music expressions have pretty much continued to work unchanged or at least upwards-compatible for a long time. Something like issue 2240 changed how input got translated into music expressions, but it did not change the manner in which preexisting music expressions get interpreted. That has remained quite stable. > Obviously any such API would cover only a subset of the possible > tweaks to Lilypond, but that'd be effectively the point, separating > tweaking into "safe" and "unsafe" things to mess around with. Most tweaks also have retained their meaning (as translated into a music expression) perfectly well. But LilyPond's typesetting itself has changed, and opposed to tweaking things like color or notehead styles, tweaks that receive coordinates or offsets usually are based on a particular behavior of some version of LilyPond. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: improving LilyPond useability
"Mark Stephen Mrotek" writes: > Since my practice and performance of Lilypond spans less than a year > (installed 21 May 2013), I might qualify to comment on the "attractiveness" > and/or "accessibility" of Lilypond to a newbie. > > Preservation of a two-part invention written for an undergraduate course > (1967) in Baroque Music Practice was the impetus to diving into Lilypond > (pardon the pun). The web page offered everything that I needed to start; > basic tutorials, which really go somewhat beyond just basic, and several > text editors. I chose Frescobaldi. A comment was made that the "drag and > drop" instructions for the test leaves one "hanging." Well, that may be true > for someone who does not peruse the tutorials or the manual readily > available on the web site. > > Some criticism has been made about the length of the manual. I started > with an IBM PS2 (1982) using a non-graphical interface Microsoft > Word. The manual, if my addled memory is correct was somewhere around > 300+ pages. And cut. "Wrangling down that attacking Rottweiler was actually not all that hard. It boils down to the same grips and holds we used to employ for killing lions when I was young." I think LilyPond is reasonably sellable to old hands at computing. But they are an endangered species. LilyPond nowadays has to teach people first what being an old hand is like. > My learning process is basically: I want to do this, how do I do this, > where is this in the manual (the "search" provision is very helpful > here), experiment with the command(s) in the score, copy the > successful command onto a cheat sheet with notation. And if you do that with good reference material, systematically and determinedly for a year, you'll be able to read the Iliad in the original. It's a fad nerds indulged in before computers were invented. Where do we get with today's capability of people to focus and work on a given task? Well, at least we are dealing with musicians here. > To date I have transcribed some 25+ piano scores for use on my PC > Slate. The PDF's produced by Lilypond are crisper than other published > or scanned scores. The consistent spacing allows my eyes to track in > the same manner from score to score. Lilypond allows me to make my own > "edition" of the score with personal fingering, dynamics, and > reminders. It also allows me to eliminate editorials with which I do > not agree. Man, the cluttered scores... At baroque time, players were supposed to do their own embellishments and extemporize from figured bass. Nowadays it is too much to ask to figure out your fingerings. Of course, it's particularly annoying for me as a button accordion player playing piano music. But it was already as a violinist playing violin music. > Not having any experience with any other engraver (have recently > dabbled with Demeno), I cannot make comparisons. I do know that from > the start Lilypond may have challenged me. It never frustrated me. Your frustration tolerance has seriously been tampered with in your early years. Perhaps LilyPond should be obligatory school material. Better get the kids into the right frame of mind early. It will help them with more than one thing later in life. Which is basically how Latin is still getting sold as school material, and it is somewhat less applicable to modern life livelihoods. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Is this ugly?
Am 03.12.2013 11:49, schrieb Karol Majewski: Elaine Gould gives the following answer: When outer notes have opposite directions, move the slur at the stem end towards the noteheads so it does not tilt contrary to the direction of the pitches. But this example doesn't have the flag, which is the problematic issue here. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Other programming languages & LilyPond
On 02/12/13 22:20, David Kastrup wrote: Scheme _is_ its scripting language. How much scope is there for creating a stable "scripting API" which could be used via Scheme (default) or any arbitrary language of choice, so long as someone writes bindings for that language? I ask because in our earlier discussion about tweaking, we discussed how large numbers of tweaks render a score effectively tied to a given version of Lilypond. But if there can be a promise, "This scripting API will be future-proof," then maybe that kind of impact can be reduced, and a side benefit would be the potential to script with languages other than Scheme. Obviously any such API would cover only a subset of the possible tweaks to Lilypond, but that'd be effectively the point, separating tweaking into "safe" and "unsafe" things to mess around with. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Hook like \AtEndDocument
Am 03.12.2013 11:41, schrieb Jan-Peter Voigt: Hi Urs, Am 03.12.2013 11:12, schrieb Urs Liska: OK, trying to digest this. Do I get this right when I say: - write a function "annotate" to be used in the main input file. This function saves some information (say location plus a comment) to an internal structure that is defined public. yes - use this function in the input files to annotate items in the score yes - write another function "process-annotations". This function uses the technique described in the snippet to make a new score from itself which will then be processed after the current score has been finished. This new score contains a function that can read the data from the previously defined data structure from the original "annotate" function. this would be an engraver placed in the score context, that does this processing inside the finalize slot. If you look in "edition.scm" lines 480 following in my lalily project, you find an annotation engraver, that does it this way. There is a music function \todo "" "" that inserts the annotation in the music as a TextScript with an annotation properties, which is fetched by the engraver. At the bottom of the file, you can place \markuplist \annolist to display the annotations in the pdf. And there is also a "*-todo.log" file created. Just a this-is-how-I-didit ;) Thank you very much for this. I've had a little look into it and will have a hard time having a closer look ;-) But I definitely have the impression I will have to go through much of this in order not to reinvent the wheel so many times (using wood instead of rubber ...) Urs Best, Jan-Peter ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
RE: improving LilyPond useability
Hello, Since my practice and performance of Lilypond spans less than a year (installed 21 May 2013), I might qualify to comment on the "attractiveness" and/or "accessibility" of Lilypond to a newbie. Preservation of a two-part invention written for an undergraduate course (1967) in Baroque Music Practice was the impetus to diving into Lilypond (pardon the pun). The web page offered everything that I needed to start; basic tutorials, which really go somewhat beyond just basic, and several text editors. I chose Frescobaldi. A comment was made that the "drag and drop" instructions for the test leaves one "hanging." Well, that may be true for someone who does not peruse the tutorials or the manual readily available on the web site. Some criticism has been made about the length of the manual. I started with an IBM PS2 (1982) using a non-graphical interface Microsoft Word. The manual, if my addled memory is correct was somewhere around 300+ pages. Other manuals (Aldus/Adobe PageMaker, PowerPoint, Excel, Windows) were at least the same, or of greater length. I do not read manuals - that would be like reading all of Proust at one sitting. My learning process is basically: I want to do this, how do I do this, where is this in the manual (the "search" provision is very helpful here), experiment with the command(s) in the score, copy the successful command onto a cheat sheet with notation. For those times at which I could not find a solution or I could not make the selected command behave as I wanted, then someone from the Users' Group would guide me. This is an aspect that is not noted or is highly underrated as a plus for Lilypond. Support for other software requires, at best, hunting through a forum or waiting for an e-mail response (usually days) or, at worst, some type of paid support. My requests for help to the group got responses in less than two hours! Although Lilypond is a complex program, it is not a complicated program. As with any complex program, acquisition of all of the "bells and whistles" is not at ones fingertips and requires some time and effort. To date I have transcribed some 25+ piano scores for use on my PC Slate. The PDF's produced by Lilypond are crisper than other published or scanned scores. The consistent spacing allows my eyes to track in the same manner from score to score. Lilypond allows me to make my own "edition" of the score with personal fingering, dynamics, and reminders. It also allows me to eliminate editorials with which I do not agree. Not having any experience with any other engraver (have recently dabbled with Demeno), I cannot make comparisons. I do know that from the start Lilypond may have challenged me. It never frustrated me. Mark Stephen Mrotek -Original Message- From: lilypond-user-bounces+carsonmark=ca.rr@gnu.org [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] On Behalf Of David Kastrup Sent: Monday, December 02, 2013 7:16 AM To: Phil Burfitt Cc: lilypond-user@gnu.org Subject: Re: improving LilyPond useability "Phil Burfitt" writes: > I believe first impressions are important, and I think that LilyPond > lets itself down here. After installing LilyPond, a new user will > discover a new icon on their desktop. They'll double click on it, and > what do they get?a sort-of read me file (it's LilyPad, but you > wouldn't know that unless you spotted the header/title), and a command > prompt that doesn't work or do anything (many computer users have > never seen or even heard of a command prompt!). Well, we are selling a Porsche engine. So that people can start doing something useful with it right away, it gets delivered built into a dune buggy. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Is this ugly?
Elaine Gould gives the following answer: When outer notes have opposite directions, move the slur at the stem end towards the noteheads so it does not tilt contrary to the direction of the pitches. <>___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Is this ugly?
On Dec 3, 2013, at 12:42 PM, Martin Tarenskeen wrote: > > > On Tue, 3 Dec 2013, Urs Liska wrote: > >> Am 03.12.2013 10:30, schrieb Janek Warchoł: >>> 2013/12/3 Karol Majewski : \version "2.17.96" { a'8 ( b'4. ) r2 } Look at the slur. It goes through stem and flag. Shouldn't it start above >> the stem? Not sure.. >>> Imo this is ugly, but i'm not sure how it should look like... >>> Janek >>> >> I don't _know_ either, but I think to become acceptable it would definitely >> need more horizontal space between. > > Don't know if it is a good solution, but would it be possible for LilyPond to > not really avoid similar collisions, but by creating small gaps in a slur or > tie where it crosses other objects like stems and beams? > > I remember I have seen something like that in (probably) an older > hand-engraved score. I will try to find the example in my books, or create an > example with some graphics editing. This’ll do the trick: \relative c'' { \override Flag.whiteout = ##t \override Staff.StaffSymbol.layer = #5 a8( b4.) r2 | } Cheers, MS ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Is this ugly?
On Tue, 3 Dec 2013, Urs Liska wrote: Am 03.12.2013 10:30, schrieb Janek Warchoł: 2013/12/3 Karol Majewski : \version "2.17.96" { a'8 ( b'4. ) r2 } Look at the slur. It goes through stem and flag. Shouldn't it start above the stem? Not sure.. Imo this is ugly, but i'm not sure how it should look like... Janek I don't _know_ either, but I think to become acceptable it would definitely need more horizontal space between. Don't know if it is a good solution, but would it be possible for LilyPond to not really avoid similar collisions, but by creating small gaps in a slur or tie where it crosses other objects like stems and beams? I remember I have seen something like that in (probably) an older hand-engraved score. I will try to find the example in my books, or create an example with some graphics editing. -- MT___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Hook like \AtEndDocument
Hi Urs, Am 03.12.2013 11:12, schrieb Urs Liska: > OK, trying to digest this. > Do I get this right when I say: > > - write a function "annotate" to be used in the main input file. > This function saves some information (say location plus a comment) to > an internal > structure that is defined public. yes > - use this function in the input files to annotate items in the score yes > - write another function "process-annotations". > This function uses the technique described in the snippet to make a new > score from itself which will then be processed after the current score > has been finished. > This new score contains a function that can read the data from the > previously defined > data structure from the original "annotate" function. this would be an engraver placed in the score context, that does this processing inside the finalize slot. If you look in "edition.scm" lines 480 following in my lalily project, you find an annotation engraver, that does it this way. There is a music function \todo "" "" that inserts the annotation in the music as a TextScript with an annotation properties, which is fetched by the engraver. At the bottom of the file, you can place \markuplist \annolist to display the annotations in the pdf. And there is also a "*-todo.log" file created. Just a this-is-how-I-didit ;) Best, Jan-Peter ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: improving LilyPond useability
renato writes: > Hi, I feel like you misinterpreted what I'm saying. All the things you > say are good of course: sensible syntax, good "getting started" > documentation, templates, not exhausting the user. I'm not saying you > should purposefully make lilypond obscure, just saying that you should > not encourage people not reading the docs, i.e. hiding complexity. I come not to hide complexity but to abolish it. > I feel that many WYSYWIG editors try to make complex things easy, and > that's usually impossible by definition, No, it isn't. The definition of "complex" is >From The Collaborative International Dictionary of English v.0.48 [gcide]: Complex \Com"plex\ (k[o^]m"pl[e^]ks), a. [L. complexus, p. p. of complecti to entwine around, comprise; com- + plectere to twist, akin to plicare to fold. See {Plait}, n.] 1. Composed of two or more parts; composite; not simple; as, a complex being; a complex idea. [1913 Webster] Ideas thus made up of several simple ones put together, I call complex; such as beauty, gratitude, a man, an army, the universe. --Locke. [1913 Webster] 2. Involving many parts; complicated; intricate. [1913 Webster] When the actual motions of the heavens are calculated in the best possible way, the process is difficult and complex.--Whewell. [1913 Webster] {Complex fraction}. See {Fraction}. {Complex number} (Math.), in the theory of numbers, an expression of the form a + b[root]-1, when a and b are ordinary integers. Syn: See {Intricate}. [1913 Webster] The main thing to note here is "involving many parts". The art to mastering complexity is then to have the complexity of a solution cleanly decompose into simpler parts, with a large preference to have this decomposition occur along the same lines that would be used to break the complexity of the _problem_ into parts. "Here is some feature/trick which you can use for tackling an actually dissimilar problem" may save your ass sometimes, but if you save too many asses, feeding and accommodation may become problematic. Programmers are a bit like mathematicians at heart: if a problem has a demonstrable solution, it is no longer interesting and they move on. Which is bad: a proof of concept is not a substitute for a concept. > so you end up sacrificing flexibility for the sake of making a good > impression on users. I would like if lilypond never went down that > path. Oh, LilyPond is a dragon anyway. But there is a difference between a lazy spiteful steed that will only work given no alternatives, and one that is one with its rider and eager to soar the skies in a union of minds. Yes, there will always be a "beware of the dragon" warning to heed. But in the end, the thing we are aiming for is "enjoy the power of the dragon and become one with it". > But that's just my opinion, I'm not a developer nor a professional > (not even amateur) musical typesetter, so I'll just shup up now :=) Your opinion is, of course, not wrong as such. But it can benefit from some seasoning. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Other programming languages & LilyPond
Am 03.12.2013 11:23, schrieb Johan Vromans: Urs Liska writes: How are Anki decks/cards stored, can they be somehow be edited in a collaborative effort? Anki stores in a SQLite database,but the decks/cards can be exported and imported to/from other formats, e.g. CSV. I know there is some work ongoing on collaborative maintaining of anki decks but I don't know details. I think this could be a nice thing to have. An evolving Anki deck would also be useful for users with considerable experience. Are you aware that there is a project to integrate LilyPond directly into Anki? https://github.com/frostschutz/Anki-LilyPond Urs ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Other programming languages & LilyPond
Urs Liska writes: > How are Anki decks/cards stored, can they be somehow be edited in a > collaborative effort? Anki stores in a SQLite database,but the decks/cards can be exported and imported to/from other formats, e.g. CSV. I know there is some work ongoing on collaborative maintaining of anki decks but I don't know details. -- Johan ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Other programming languages & LilyPond
Am 03.12.2013 11:12, schrieb Henning Hraban Ramm: Am 2013-12-03 um 14:42 schrieb Urs Liska : Am 03.12.2013 09:35, schrieb Curt: Collaboratively creating lilypond anki decks could be clunky. You'd probably be collaboratively editing the generating scripts themselves, and then be building the decks from that, and then reimporting on top of your already existing deck, which could be problematic. Hmmm. In which form are decks and cards stored on disk with Anki? A small file tree with several SQLite dbs: Anki ├── Hraban │ ├── backups │ │ ├── backup-13.apkg │ │ ├── backup-14.apkg │ │ ├── backup-15.apkg │ │ └── backup-42.apkg │ ├── collection.anki2 │ ├── collection.log │ ├── collection.media │ ├── collection.media.db │ └── deleted.txt ├── README.txt ├── addons └── prefs.db Thanks for that explanation. So Anki decks aren't really accessible to version control, i.e. a Git repository. AFAICS in order to maintain a deck collaboratively one would need a server application that interacts with the SQLite dbs. Which is of course feasible (I think SQLite support is nearly anywhere), but would of course need considerable more effort than simply initializing a repo. OTOH I could imagine there already exist working approaches. No time to research, though :-( Urs ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Other programming languages & LilyPond
Curt writes: > I've written perl scripts that generate lilypond snippets to include in > Anki decks for self-study of jazz theory. Share! Share! (both the tools and the decks) Please... -- Johan ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Hook like \AtEndDocument
Am 03.12.2013 10:16, schrieb David Kastrup: Urs Liska writes: Hi all, is there a way to hook into the compilation process that allows me to do something when all parsing has been done? Concretely I want to use a Scheme function to collect information during the parsing (something like a log) and want to output this in sorted form to an external file. I see two ways to accompish this: a) write the log to an internal structure, then at the end sort it and write it to the file b) write it to the file immediately and call an external script at the end. Both approaches (I strongly prefer a) because I'd prefer not to rely on an external script) would need a trigger (or listener?) that calls a function when everything has been parsed (or when the whole compilation process has been finished). b) could be worked around by wrapping the lilypond call itself into a script, but as said I'd prefer a) anyway. Any ideas? Check out http://lsr.dsi.unimi.it/LSR/Item?id=630>. OK, trying to digest this. Do I get this right when I say: - write a function "annotate" to be used in the main input file. This function saves some information (say location plus a comment) to an internal structure that is defined public. - use this function in the input files to annotate items in the score - write another function "process-annotations". This function uses the technique described in the snippet to make a new score from itself which will then be processed after the current score has been finished. This new score contains a function that can read the data from the previously defined data structure from the original "annotate" function. (Or alternatively this new score doesn't do more than calling an external script when "annotate" would have written everything to a temporary file immediately.) ? Urs ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Other programming languages & LilyPond
Am 2013-12-03 um 14:42 schrieb Urs Liska : > Am 03.12.2013 09:35, schrieb Curt: >> Collaboratively creating lilypond anki decks could be clunky. You'd probably >> be collaboratively editing the generating scripts themselves, and then be >> building the decks from that, and then reimporting on top of your already >> existing deck, which could be problematic. >> > Hmmm. > In which form are decks and cards stored on disk with Anki? A small file tree with several SQLite dbs: Anki ├── Hraban │ ├── backups │ │ ├── backup-13.apkg │ │ ├── backup-14.apkg │ │ ├── backup-15.apkg │ │ └── backup-42.apkg │ ├── collection.anki2 │ ├── collection.log │ ├── collection.media │ ├── collection.media.db │ └── deleted.txt ├── README.txt ├── addons └── prefs.db Greetlings, Hraban --- fiëé visuëlle Henning Hraban Ramm http://www.fiee.net http://angerweit.tikon.ch/lieder/ https://www.cacert.org (I'm an assurer) ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Is this ugly?
Am 03.12.2013 10:30, schrieb Janek Warchoł: 2013/12/3 Karol Majewski : \version "2.17.96" { a'8 ( b'4. ) r2 } Look at the slur. It goes through stem and flag. Shouldn't it start above the stem? Not sure.. Imo this is ugly, but i'm not sure how it should look like... Janek I don't _know_ either, but I think to become acceptable it would definitely need more horizontal space between. If it would start above the stem it would probably look absurd too. Maybe start right to the notehead, possibly below the flag. But maybe it would look acceptable going through the flag but not through the stem at the same time. ??? Urs ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: improving LilyPond useability
From: "Renato" Sent: Monday, December 02, 2013 11:54 PM "Phil Burfitt" wrote: >you don't really get around these programs without reading docs >(and you shouldn't try to make it easy). I disagree with "you shouldn't try to make it easy". what I meant was "you shouldn't try to make it easy to get around fiddling with the program without reading the docs", i.e. you shouldn't try to encourage not reading the docs Ok, I see what you mean. However I think a "carrot" is far better than a "stick". Give the new user plenty to play with straight off. A read-me file with usage instructions, a mini tutorial and well chosen examples beyond just \relative c' { c d e f g a b c } will quickly wet their appetite. They'll soon be seeking out the docs with enthusiasm, and not begrudgingly. Phil. renato ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: improving LilyPond useability
On Tue, 03 Dec 2013 10:01:30 +0100 David Kastrup wrote: > Renato writes: > > > On Mon, 2 Dec 2013 18:14:52 - > > "Phil Burfitt" wrote: > > > >> >you don't really get around these programs without reading docs > >> >(and you shouldn't try to make it easy). > >> > >> I disagree with "you shouldn't try to make it easy". > > > > what I meant was "you shouldn't try to make it easy to get around > > fiddling with the program without reading the docs", i.e. you > > shouldn't try to encourage not reading the docs > > Why? I find nothing wrong with things that work as expected as much > as possible. It is not a sign of good design if naive expectations > turn out wrong again and again. The purpose of LilyPond is > typesetting music, not a puzzle game. As it is a language composed > of arbitrary letters on the keyboard, one needs something to start > off, true. An environment with default templates or a sample > document/run-through at least gives the user enough of a clue to know > when he needs to look at more stuff or can try figuring out something > by himself. > > But when he _does_ try figuring out something by himself, then it's > nice if at least some things work out as expected instead of failing > for obscure technical reasons. > > There is no point in exhausting the tolerance levels of the user just > for kicks. Learning stuff must have proportional rewards, or at some > point people stop. > > And that means we need a user experience where you are not stuck for > days in the docs before getting out your first notes. > Hi, I feel like you misinterpreted what I'm saying. All the things you say are good of course: sensible syntax, good "getting started" documentation, templates, not exhausting the user. I'm not saying you should purposefully make lilypond obscure, just saying that you should not encourage people not reading the docs, i.e. hiding complexity. I feel that many WYSYWIG editors try to make complex things easy, and that's usually impossible by definition, so you end up sacrificing flexibility for the sake of making a good impression on users. I would like if lilypond never went down that path. But that's just my opinion, I'm not a developer nor a professional (not even amateur) musical typesetter, so I'll just shup up now :=) cheers, renato signature.asc Description: PGP signature ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Is this ugly?
2013/12/3 Karol Majewski : > \version "2.17.96" > > { > a'8 ( b'4. ) r2 > } > > Look at the slur. It goes through stem and flag. Shouldn't it start above the > stem? Not sure.. Imo this is ugly, but i'm not sure how it should look like... Janek ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Denemo-feedback
On Tue, 2013-12-03 at 01:20 +0100, Noeck wrote: > > But the feedback I get about Denemo is almost entirely positive - those > > who find it unusable just quietly switch to something else, out of > > politeness I guess. Most unhelpful! > > Hi Richard, > > several times now, I looked at Denemo (about twice a year for the last 4 > years). So I can only share a first impression. As background info: I > probably always will prefer text input and I like Frescobaldi very much. > But I think that a GUI is definitely needed for the average musician. My > approach: A GUI program should be self explaining - I did not read the > manual. Denemo version 0.9.2 (latest ubuntu). sigh!, that is just over two years out of date. Like LilyPond we have now started posting binaries for GNU/Linux on our website. I was using ancient LilyPond versions until I finally posted to the LilyPond bug list and got told about not depending on my distro for a LilyPond installer. Is there anything we can do to alert people who would not want to be using ancient versions if only they knew? > > You asked for feedback, so here is my first impression (+ positive, - neg.): > > Note entry: > - So I open Denemo and I get asked about the input method (for most of > them I don't know what they mean). I chose simple (this takes minutes, > if I choose Lilypond, it hangs completely), but I am not intelligent > enough to directly figure out how it works. I can enter notes with the > mouse and hitting enter. Why can't I just click? The different cursors > (for pitch and time-position) and their colours confuse me, why not one? > I would find it more intuitive if I could click on a note to change it > and between notes to insert something. Here, it is difficult to respond. So much has changed and I only have hazy recollections of what the program was like then... I think all of those things are long fixed. > + If I click on a note, it gets marked and I can add articulations, > that's nice. Delete, arrows, etc. work as expected. I can change clefs > and the key by clicking on them, that's good. > > - I can not click on the barlines, barnumbers, slurs, beams, > clef-changes to edit them This remains true, except that nowadays you can click on slurs and other things in the final typeset and do things to them there. I think of the clicking with the mouse to do things as just something that gets people started, for serious use I expect people to use the keyboard, as it is quicker. (Perhaps I should add that for historical reasons, making things like barlines, trills, etc. clickable is comparatively hard - the display is still largely just a drawing as it was in 1999 (?) when the program was created). > > - I can add a slur, but it is not shown where I selected the notes but > half a measure later. ??? sounds bizarre > > - I thought, maybe I can move things (thats where a GUI could be > advantageous over the text input), but dragging does not work This is a GUI not a WYSIWYG display. That is, what you see is what you mean, you can see what music you have entered, but not what the LilyPond will typeset to look like. And that is, of course, absolutely fundamental, and is why Denemo is unusual. You are trading WYSIWYG for quality of typesetting - if you typeset as you enter the music either you have to wait a long time between each keystroke or you have to put up with poor typesetting which needs manual adjustments. > > Look: > - Why don't you use Fetafont symbols for the buttons and for objects > (like the time signature)? It would look much nicer. a good idea - I think they have been creeping in over the last couple of years. > > - I see a tilde ~ in front of each duration button symbol. > > - The ~. symbol has no effect > > - It also would make a better impression, if there were lots of toolbars > (not that I like it, but I would give the impression that this is a > powerful tool) I think all that is ancient history now. > > - There are so many menu items that I can only see 2 letters of each > menu item. So I can only guess what's behind. ??? menus have been shortened (and deepened) a couple of times ... now we have a searchable command center; we cannot add every LilyPond feature into a hierarchical menu system. > > - The score 'preview' is very far from Lilyponds good quality, that > reduces the fun factor (compared to Frescobaldi, where I see nice scores > while working) On faster machines the LilyPond typeset can keep up (especially if you set it to typeset just a portion of the score). This feature did get announced on the LilyPond list. > > - Everytime I insert a new note, I hear a very strange sound (like > broken speakers) but that's perhaps a linux-only-problem. Well, it is more specific than that, Denemo is mostly tested on GNU/Linux systems, but sound systems vary and I think they can require you to adjust the preferences - I certainly came across one case where someone had changed the sample rate (because they thou
Re: improving LilyPond useability
Renato writes: > On Mon, 2 Dec 2013 18:14:52 - > "Phil Burfitt" wrote: > >> >you don't really get around these programs without reading docs >> >(and you shouldn't try to make it easy). >> >> I disagree with "you shouldn't try to make it easy". > > what I meant was "you shouldn't try to make it easy to get around > fiddling with the program without reading the docs", i.e. you shouldn't > try to encourage not reading the docs Why? I find nothing wrong with things that work as expected as much as possible. It is not a sign of good design if naive expectations turn out wrong again and again. The purpose of LilyPond is typesetting music, not a puzzle game. As it is a language composed of arbitrary letters on the keyboard, one needs something to start off, true. An environment with default templates or a sample document/run-through at least gives the user enough of a clue to know when he needs to look at more stuff or can try figuring out something by himself. But when he _does_ try figuring out something by himself, then it's nice if at least some things work out as expected instead of failing for obscure technical reasons. There is no point in exhausting the tolerance levels of the user just for kicks. Learning stuff must have proportional rewards, or at some point people stop. And that means we need a user experience where you are not stuck for days in the docs before getting out your first notes. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Is this ugly?
\version "2.17.96" { a'8 ( b'4. ) r2 } Look at the slur. It goes through stem and flag. Shouldn't it start above the stem? Not sure... Karol <>___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Hook like \AtEndDocument
Urs Liska writes: > Hi all, > > is there a way to hook into the compilation process that allows me to > do something when all parsing has been done? > > Concretely I want to use a Scheme function to collect information > during the parsing (something like a log) and want to output this in > sorted form to an external file. > > I see two ways to accompish this: > > a) write the log to an internal structure, then at the end sort it and > write it to the file > b) write it to the file immediately and call an external script at the end. > > Both approaches (I strongly prefer a) because I'd prefer not to rely > on an external script) would need a trigger (or listener?) that calls > a function when everything has been parsed (or when the whole > compilation process has been finished). > b) could be worked around by wrapping the lilypond call itself into a > script, but as said I'd prefer a) anyway. > > Any ideas? Check out http://lsr.dsi.unimi.it/LSR/Item?id=630>. It's not clear to me why this is not in http://lilypond.org/doc/v2.16/Documentation/snippets/> since it is in the LilyPond tree under Documentation/snippets and it seems sort of pointless to maintain it there without making it available. Bug? -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Another time model (related to the usability thread)
On Mon, 02 Dec 2013 22:56:49 -0800, Kieren MacMillan wrote: Instead of specifying an offset from a rehearsal mark, maybe simpler to have an independent type of marker to put in the \global stream. Then the entries of the parts are visible all at once in \global global = { R1*32 \mark"A" R1*30 \marker"vln34" R1*18 \mark"B" } In what way does \pushToTag not do this already? It took a while to figure out the documentation, but maybe \pushToTag would work. It seems that, instead of each instrument part being put in a <> construct with global sequence containing the timing and marks (which I always call \conductor) the instrument part is a *copy* of \conductor, into which we *push* the music for that instrument at the appropriate places. So far I've seen just two problems. The tag, at the place where we want a section of music from some instrument, needs to mark a parallel music construction that is at least as long as the music to be added. (Otherwise the result of \pushToTag is longer than the \conductor part, ruining the synchronization) When the instruments enter simultaneously, the structure is simple. But if they come in at overlapping times, I seem to need a nested parallel/sequential construction in order to give each part a parallel-music construction of sufficient length. If there are a few parts using this mechanism, it will get a bit complicated. I do not see a way to get the multimeasure rests into the parts. There are no skips of the proper length in the result of \pushToTag; instead the music is in parallel with longer, overlapping, skips. But, I can change the length of skips in \conductor and the music moves to different bars as desired. I will not be pursuing this technique, unless there is a way to avoid the confusing parallel music constructions. \version "2.16.1" % Intro to Dvorak opus 95, HornII and Timpani only conductor = \relative c { \set Score.markFormatter = #format-mark-box-barnumbers \time 4/4 \tag #'score \tempo "Adagio" 4 = 63 s1*9 \tag #'tp1 \tag #'hn1 << s1*9 >> \tag #'hn2 << { s1*2 \tag #'tp2 << s1*3 >> } >> \mark\default \bar"||" \time 2/4 \tag#'score \tempo "Allegro Molto" 4 = 136 s2*15 \mark\default } hornII = \new Voice << \compressFullBarRests R1^\markup"in E" \transposition e \pushToTag #'hn1 \relative c'' { r8.. d32\ff d2 r4 | r8.. d32 d2 r4 | r8.. d32 d8. r16 r8.. d32 d8. r16 | } \pushToTag #'hn2 \relative c'' { d,16\f r8. r4 d16 r8. r4 | d16 r8. r4 d16 r8. r4 | c16 r8. r4 r4 r16 c'-. c-. c-. | c16 r8. b16 r8. r2 | } \conductor >> timpani = { \clef bass \compressFullBarRests \pushToTag #'tp1 { r16 a32\< a a16\ff r16 r4 r2 | r16 a32\< a a16\sfz r16 r4 r2 | r16 a32 a a16 r16 r4 r16 a32 a a16 r16 r4 } \pushToTag #'tp2 \relative c { r8 e16\mf\< e e e e e e2*7/8\startTrillSpan s16\stopTrillSpan r8\! e\sfz r b\sfz\> b2\startTrillSpan b4\stopTrillSpan\p r r2 } \conductor } \score { << \new Staff \hornII \new Staff \timpani >> } \timpani \hornII ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Another time model (related to the usability thread)
Kieren MacMillan writes: > Hi James (et al.), > >> If you insert a bar, you'd have to change R1*32 to R1*33 by hand. Or, if you >> change the 10th out of the 32 bars into a 3/4 measure, I believe you would >> then have to change R1*32 to "R1*9 R2. R1*22" -- highly error prone. > > \pushToTag was designed (by David K, and paid for in part by a bounty > from me) to solve exactly that problem. > Now all one needs is a function to take skips (e.g., from a global > variable) and turn them into multi-measure-rests — which is probably > relatively easy to do — and there's no more problem. =) You mean like \applyMusic \mmrest-of-length { s1*20 } ? -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Other programming languages & LilyPond
Vaughan McAlley writes: > On 3 December 2013 13:18, PMA wrote: >> I program in J almost exclusively, since the pursuit of my brainstorms >> (music-bound or not) tends to favor handy ad-hoc number crunching. > > +1 but with Lua. I’ve done some useful things. > > Alternatives are Frescobaldi snippets if you know Python, and you can > do a lot with regexes, which is a side-effect of Lilypond’s text file > format. > > David Kastrup wrote: >>Scheme _is_ its scripting language. There is some Lua branch in >>GuileV2, but it's unclear when it will be production quality, unclear >>when LilyPond will run on GuileV2, and unclear whether both efforts >>could be combined. > > That looks really interesting—I’d probably do all sorts of stuff. But > then Lilypond would become a Frankenstein’s monster of extensions in > different languages. So I should probably just learn Scheme. > > Incidentally, when I first arrived on the Lilypond mailing list, I > recognized David Kastrup from the Lua mailing list. So he does know > Lua quite well, even if he keeps it quiet :-) We've had discussions a few years ago where I did a number of comparisons. Lua is very nice and has some quite endearing traits as an extension language. What I consider probably its best feature is its lack of choices. It has a single data structure implemented efficiently. It has a single numeric type. Instead of symbols and strings it has a single chimera with traits of both: interned strings (actually, as opposed to those of LISP, Guile symbols are pretty much just an interned string as well, but one does not want to use them for string processing as they are not tuned for that). So whenever the question comes up "how do we map our user language to Lua data structures", there is usually just a single sensible answer instead of several different tradeoffs. Now LilyPond works a lot with exact fractions, and teaching that to the number type of Lua is not going to be funny. But Lua falls down in a few areas: it is not a functional language, and LilyPond juggles in and out of Scheme all the time for _expressions_. And it doesn't support template/macro-like manipulation of its parse trees like Scheme does, since everything in Scheme is transparently a list. I've actually used Lua for writing LilyPond code. Nowadays I wouldn't, really. Scheme is a bit less convenient for scripting, so if I had the option to write LilyPond code with a standalone Scheme interpreter and a standalone Lua interpreter, it would likely be a tie. But LilyPond's Scheme knows about music. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Hook like \AtEndDocument
Hi all, is there a way to hook into the compilation process that allows me to do something when all parsing has been done? Concretely I want to use a Scheme function to collect information during the parsing (something like a log) and want to output this in sorted form to an external file. I see two ways to accompish this: a) write the log to an internal structure, then at the end sort it and write it to the file b) write it to the file immediately and call an external script at the end. Both approaches (I strongly prefer a) because I'd prefer not to rely on an external script) would need a trigger (or listener?) that calls a function when everything has been parsed (or when the whole compilation process has been finished). b) could be worked around by wrapping the lilypond call itself into a script, but as said I'd prefer a) anyway. Any ideas? Thanks Urs ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Other programming languages & LilyPond
Am 03.12.2013 09:35, schrieb Curt: Collaboratively creating lilypond anki decks could be clunky. You'd probably be collaboratively editing the generating scripts themselves, and then be building the decks from that, and then reimporting on top of your already existing deck, which could be problematic. Hmmm. In which form are decks and cards stored on disk with Anki? Urs ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Other programming languages & LilyPond
On Dec 2, 2013, at 3:07 PM, SoundsFromSound wrote: > Urs Liska wrote >> Am 02.12.2013 23:34, schrieb Curt: >>> I've written perl scripts that generate lilypond snippets to include in >>> Anki decks for self-study of jazz theory. There's all kinds of crazy >>> programming people can do with Lilypond. >>> >>> Curt >> >> How are Anki decks/cards stored, can they be somehow be edited in a >> collaborative effort? >> I think this could also be a nice addition to the Learning Manual (or >> independently). >> >> Urs >> > > Curt, > I'm also interested in hearing more about Anki and your scripts! Sure - Usually what I do is I write a perl script to run through several combinations of music theory concepts. The script then generates the tiny lilypond snippet for that concept. It will then open a more general lilypond template, and substitute that snippet in to the appropriate place. The lilypond is then rendered to a small pdf file. I also have other utilities to generate other assets, like a small midi2mp3 script. Through a combination of more scripts and shell commands, the assets are bundled together with a CSV file (a row for each combination) that points to the appropriate media. Collaboratively creating lilypond anki decks could be clunky. You'd probably be collaboratively editing the generating scripts themselves, and then be building the decks from that, and then reimporting on top of your already existing deck, which could be problematic. So far I've created decks for: - Guitar Fretboard training: the "question" draws a fretboard with a circle and a question mark at the relevant note position, the "answer" replaces the question mark with the note name and plays the pitch. I want to expand it to include accidentals. - Jazz Closed Position Comping: this has questions like "where is the appropriate place to play dm7b5?" and then shows the notation and plays the chord (first inversion surrounding middle-C). Closed root position only, so it's not very useful. I'm hoping to write more decks for more useful comping styles. - Jazz Astronomy, Major: this has questions like what is the best scale to play against F7 in A major? Answer: it's a flat-2 of V, so play C melodic minor starting on F. Several styles of cards that play pitches and scales and show notation and chord symbols. This deck has over 2500 cards, and I want to supplement it with minor keys. I've had multiple requests to make the decks available, and it really is on my list - I just need to clean some things up first. :) Curt ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Schikkers List
Mark Knoop writes: > There seems to be a bug - see attached screenshot. Key signatures are > inserted always as if in treble clef rather than appropriate to the > selected clef. Thanks! Greetings, Jan -- Jan Nieuwenhuizen | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.nl ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user