Re: LilyPond Video Tutorials (Beginner)
Hello all, I just wanted to share with you that I've uploaded a few more videos to round out the beginner-series LilyPond playlist. They must have slipped through the cracks when I went to upload them a few weeks ago, but now they are all up. Sorry for the delay. Currently the playlist is just under one full hour of tutorials. I'm currently working on the second playlist which will feature more advanced topics including: Introduction to the Score Block Contexts and Engravers: The Basics What is Tweaking? Creating a Template From Scratch Building a Full Score (orchestra) Simple Scheme / Variables: In-depth and more... They should be up very soon. If you'd like a direct link, please click here -- http://bit.ly/bcl-lilypond Thanks, Ben Federico Bruni-5 wrote 2013/8/23 Phil Holmes lt; mail@ gt; - Original Message - From: Trevor Daniels lt; t.daniels@.co gt; To: SoundsFromSound lt; soundsfromsound@ gt;; lt; lilypond-user@ gt; Sent: Friday, August 23, 2013 9:52 AM Subject: Re: LilyPond Video Tutorials (Beginner) SoundsFromSound wrote Thursday, August 22, 2013 11:40 PM Hi Ben I wanted to let you all know that I recently uploaded some LilyPond tutorial videos on YouTube. I worked really hard on them and did the best I could considering the recording equipment I had available. This is great work! A very professional introduction to LilyPond and Frescobaldi. It deserves a link from the LilyPond site, IMO. You could put it up as a ponding? I think that it would deserve a best location. What about adding it in the FAQ? http://lilypond.org/website/faq.html Something like: Too lazy to read the Learning Manual? or Scared by text manuals? Watch this series of video tutorials and decide if it worths learning LilyPond We missed such a good screencasts, kudos to Ben! ___ lilypond-user mailing list lilypond-user@ https://lists.gnu.org/mailman/listinfo/lilypond-user - composer | sound designer -- View this message in context: http://lilypond.1069038.n5.nabble.com/LilyPond-Video-Tutorials-Beginner-tp149635p150551.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: LSR - Adding extra fingering with scheme - Needs update.
Dear David, Dear Harm, Thanks much for your fast answers ! 2013/9/9 Thomas Morley thomasmorle...@gmail.com See also: http://lilypond.1069038.n5.nabble.com/Problem-with-snippet-654-after-2-15-28-td131207.html Nice link ! ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: midi doesn't work with custom Voice contexts
Thomas Morley thomasmorle...@gmail.com writes: I had a look at your code and did some experiments. I was very surprised that the following seems to work (outputting pdf and midi) myL = \layout { \context { \Staff \name MyCustomStaff \alias Staff \consists Pitch_squash_engraver squashedPosition = #0 \override NoteHead #'style = #'slash \override Stem #'transparent = ##t \override Flag #'transparent = ##t } \context { \Score \accepts MyCustomStaff } } \score { \new Staff { c' d' e' f' } \new MyCustomStaff { c' d' e' f' } \midi { \myL } } It doesn't output Midi for me. Is this really valid code? If an output block _starts_ with an output definition, then this output definition is cloned and is entirely responsible for the result; otherwise $defaultlayout, $defaultmidi, $defaultpaper are used as templates. If the result is a layout block, then the result is used as a layout block. This is not exactly intuitive: it might make sense to verify that the type of output definition matches what the syntax calls for and give an error message otherwise. The type of output definition is actually established rather flimsily: there is a definition is-paper, is-midi or is-layout set to #t in the output definition's module. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Question about autocompile bash script
Carl Peterson-2 wrote Question for those who are familiar with linux bash shell scripting... ... The question I have is whether it is possible to set up a similar script to trace a file's inclusion in other lilypond files and then compile whenever an upstream file is loaded. My template/framework for hymn settings uses discrete levels of file inclusions. ... Thanks, Carl ___ lilypond-user mailing list lilypond-user@ https://lists.gnu.org/mailman/listinfo/lilypond-user I allready made a C program for Windows, which does a limited 'follow the \include files' to examine the file dates. Finally it starts lilypond (command line) if one of the source files found is newer than the resulting PDF, otherwise it prompts for the question 'compile or not?'. This program is limited to - only files (source and result) in the current working directory are examined - the \include command must be the only one in the line (white space only allowed at the left), exactly one space to the string start '' character - \include commands inside a comment block ( '%{' to '%}' ) will be examined, too. Unfortunately, this program is specialized for my use. I did try (but not complete) to implement some special features. There is very little documentation in the source code. Only if you have some experiance in C programming the source code can help - but an experianced C programmer might be faster to build his own 'ly-newer' command line program form scratch than by extending my program. Feel free to ask for the C source code, if you are still interested. ArnoldTheresius -- View this message in context: http://lilypond.1069038.n5.nabble.com/Question-about-autocompile-bash-script-tp150528p150555.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Question about autocompile bash script
Hello Carl, An approach could be to create a makefile containing: - the rules to compile LP files to PDF (fixed part); - the dependencies among LP files reflecting the presence of \include in them (variable part). Producing the makefile could be done by a script when your dropbox changes, and you could then call make to compile whatever needs to be. JM Le 10 sept. 2013 à 10:04:54, ArnoldTheresius arnold.we...@siemens.com a écrit : Carl Peterson-2 wrote Question for those who are familiar with linux bash shell scripting... ... The question I have is whether it is possible to set up a similar script to trace a file's inclusion in other lilypond files and then compile whenever an upstream file is loaded. My template/framework for hymn settings uses discrete levels of file inclusions. ... Thanks, Carl ___ lilypond-user mailing list lilypond-user@ https://lists.gnu.org/mailman/listinfo/lilypond-user I allready made a C program for Windows, which does a limited 'follow the \include files' to examine the file dates. Finally it starts lilypond (command line) if one of the source files found is newer than the resulting PDF, otherwise it prompts for the question 'compile or not?'. This program is limited to - only files (source and result) in the current working directory are examined - the \include command must be the only one in the line (white space only allowed at the left), exactly one space to the string start '' character - \include commands inside a comment block ( '%{' to '%}' ) will be examined, too. Unfortunately, this program is specialized for my use. I did try (but not complete) to implement some special features. There is very little documentation in the source code. Only if you have some experiance in C programming the source code can help - but an experianced C programmer might be faster to build his own 'ly-newer' command line program form scratch than by extending my program. Feel free to ask for the C source code, if you are still interested. ArnoldTheresius -- View this message in context: http://lilypond.1069038.n5.nabble.com/Question-about-autocompile-bash-script-tp150528p150555.html Sent from the User mailing list archive at Nabble.com. ___ 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: Question about autocompile bash script
If there were some kind of make-dep for lilypond it could even generate these dependencies automaticaly, like it happens for C (the compiler generates dependencies when passed the correct flags). This should not be too hard to brew up? Immanuel On Tue, Sep 10, 2013 at 10:47 AM, Jacques Menu jacques.m...@tvtmail.chwrote: Hello Carl, An approach could be to create a makefile containing: - the rules to compile LP files to PDF (fixed part); - the dependencies among LP files reflecting the presence of \include in them (variable part). Producing the makefile could be done by a script when your dropbox changes, and you could then call make to compile whatever needs to be. JM Le 10 sept. 2013 à 10:04:54, ArnoldTheresius arnold.we...@siemens.com a écrit : Carl Peterson-2 wrote Question for those who are familiar with linux bash shell scripting... ... The question I have is whether it is possible to set up a similar script to trace a file's inclusion in other lilypond files and then compile whenever an upstream file is loaded. My template/framework for hymn settings uses discrete levels of file inclusions. ... Thanks, Carl ___ lilypond-user mailing list lilypond-user@ https://lists.gnu.org/mailman/listinfo/lilypond-user I allready made a C program for Windows, which does a limited 'follow the \include files' to examine the file dates. Finally it starts lilypond (command line) if one of the source files found is newer than the resulting PDF, otherwise it prompts for the question 'compile or not?'. This program is limited to - only files (source and result) in the current working directory are examined - the \include command must be the only one in the line (white space only allowed at the left), exactly one space to the string start '' character - \include commands inside a comment block ( '%{' to '%}' ) will be examined, too. Unfortunately, this program is specialized for my use. I did try (but not complete) to implement some special features. There is very little documentation in the source code. Only if you have some experiance in C programming the source code can help - but an experianced C programmer might be faster to build his own 'ly-newer' command line program form scratch than by extending my program. Feel free to ask for the C source code, if you are still interested. ArnoldTheresius -- View this message in context: http://lilypond.1069038.n5.nabble.com/Question-about-autocompile-bash-script-tp150528p150555.html Sent from the User mailing list archive at Nabble.com. ___ 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 ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
whole notes are differently aligned with different styles
while discussing http://lilypond.1069038.n5.nabble.com/Notehead-of-harmonic-whole-note-too-narrow-td150520.html Noeck detected that the alignment of normal, harmonic and harmonic-mixed notes in a chord is different http://lilypond.1069038.n5.nabble.com/file/n150559/test5.png test5.ly http://lilypond.1069038.n5.nabble.com/file/n150559/test5.ly while the ledger line of the normal note head touches the stem of the grace note before, the ledger lines of the harmonic heads are distinctly apart. the harmonic-mixed note head seems to be shifted right Eluze -- View this message in context: http://lilypond.1069038.n5.nabble.com/whole-notes-are-differently-aligned-with-different-styles-tp150559.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Question about autocompile bash script
Hello all :) Just my 2cts contribution : I also had the same kind of requirement (for an hymnbook project), only difference is I use a mercurial repository instead of dropbox. When pushing changes to the repository, it launches a command in bash (with a hook) running make in every directory where a makefile exists. The command for this is quite simple and just : find path_to_directory -type f -name 'Makefile' -execdir make \; Then I have a series of makefiles tailored to do what I want. Most of the dependencies are deduced directly from the \include directives in the main files (plus some other fixed depending on hymn template). File structure is also scattered (different versions with common parts, lyrics, melody, chords, voices...) So what happens is that every time changes are pushed on the server, make is called for each song, but exits quickly when no changes are found and only launches lilypond if necessary. I can give those makefiles if one is interested. Yann Message: 7 Date: Tue, 10 Sep 2013 11:22:24 +0200 From: immanuel litzroth ilitzr...@gmail.com To: Jacques Menu jacques.m...@tvtmail.ch Cc: ArnoldTheresius arnold.we...@siemens.com, lilypond-user lilypond-user@gnu.org Subject: Re: Question about autocompile bash script Message-ID: CAJjmLU6L6Xod0HJSif3AMWdXQ_=HOkrM8fA83Qdd=u1gfx1...@mail.gmail.com Content-Type: text/plain; charset=iso-8859-1 If there were some kind of make-dep for lilypond it could even generate these dependencies automaticaly, like it happens for C (the compiler generates dependencies when passed the correct flags). This should not be too hard to brew up? Immanuel On Tue, Sep 10, 2013 at 10:47 AM, Jacques Menu jacques.m...@tvtmail.chwrote: Hello Carl, An approach could be to create a makefile containing: - the rules to compile LP files to PDF (fixed part); - the dependencies among LP files reflecting the presence of \include in them (variable part). Producing the makefile could be done by a script when your dropbox changes, and you could then call make to compile whatever needs to be. JM Le 10 sept. 2013 ? 10:04:54, ArnoldTheresius arnold.we...@siemens.com a ?crit : Carl Peterson-2 wrote Question for those who are familiar with linux bash shell scripting... ... The question I have is whether it is possible to set up a similar script to trace a file's inclusion in other lilypond files and then compile whenever an upstream file is loaded. My template/framework for hymn settings uses discrete levels of file inclusions. ... Thanks, Carl ___ lilypond-user mailing list lilypond-user@ https://lists.gnu.org/mailman/listinfo/lilypond-user I allready made a C program for Windows, which does a limited 'follow the \include files' to examine the file dates. Finally it starts lilypond (command line) if one of the source files found is newer than the resulting PDF, otherwise it prompts for the question 'compile or not?'. This program is limited to - only files (source and result) in the current working directory are examined - the \include command must be the only one in the line (white space only allowed at the left), exactly one space to the string start '' character - \include commands inside a comment block ( '%{' to '%}' ) will be examined, too. Unfortunately, this program is specialized for my use. I did try (but not complete) to implement some special features. There is very little documentation in the source code. Only if you have some experiance in C programming the source code can help - but an experianced C programmer might be faster to build his own 'ly-newer' command line program form scratch than by extending my program. Feel free to ask for the C source code, if you are still interested. ArnoldTheresius ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Midi equalisation
This (trimmed) example doesn't work as the documentation suggests it should, in this case to reduce the volume of the organ relative to the voices. Changing the volume values makes no difference at all. \dyns contains dynamics for the organ, each voice part has its own dynamics. Am I missing something? \score { \new Staff = v1 { \set Staff.midiInstrument = #choir aahs \set Staff.midiMaximumVolume = #0.8 \set Staff.midiMinimumVolume = #0.4 \new Voice { \transpose d f \musicsoprano } } \new Staff = v5 { \set Staff.midiInstrument = #church organ \set Staff.midiMaximumVolume = #0.4 \set Staff.midiMinimumVolume = #0.2 \new Voice { \transpose d f \upper } } \new Voice = v7 { \dyns } \new Voice = tempi { \tempo 4.=84 } \midi { } } -- Hilary ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Midi equalisation
Hilary Snaden h...@newearth.demon.co.uk writes: This (trimmed) example doesn't work as the documentation suggests it should, in this case to reduce the volume of the organ relative to the voices. Changing the volume values makes no difference at all. \dyns contains dynamics for the organ, each voice part has its own dynamics. Am I missing something? \score { \new Staff = v1 { \set Staff.midiInstrument = #choir aahs \set Staff.midiMaximumVolume = #0.8 \set Staff.midiMinimumVolume = #0.4 \new Voice { \transpose d f \musicsoprano } } \new Staff = v5 { \set Staff.midiInstrument = #church organ \set Staff.midiMaximumVolume = #0.4 \set Staff.midiMinimumVolume = #0.2 \new Voice { \transpose d f \upper } } \new Voice = v7 { \dyns } \new Voice = tempi { \tempo 4.=84 } \midi { } } An actual dynamic? I think the min/max values only take to flight when specifying a dynamic. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
[ANNOUNCE] New Portfile for Frescobaldi on Mac
Dear Mac OS X Frescobaldi users, [from http://lists.gnu.org/archive/html/lilypond-user/2013-09/msg00030.html] I am currently fine tuning a new version of the Portfile that automatically creates also the application bundle. I just need to test it on 10.7 and 10.8 machines (I run 10.6 and have occasional access to those machines) and then I'll publish it into the master branch of my repository. I'll announce to the list when this will happen (in a couple of days, I hope). I am pleased to announce that a new version of my Portfiles for Frescobaldi installation through MacPorts is publicly available in my GitHub repository (https://github.com/dliessi/ports). New features include the possibility to build a clickable application bundle and the inclusion of some useful patches for system language handling and automatic detection of default LilyPond installation. You'll find instructions on how to install/upgrade in my repository's home page. If you need further instructions or if you run into any problems, don't hesitate to contact me, either sending me an email message or opening an issue on GitHub (https://github.com/dliessi/ports/issues). I would like to publicly thank Stefan Vollmar for his help in testing my Portfiles. Best wishes. Davide ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Question about autocompile bash script
On Tue, Sep 10, 2013 at 5:22 AM, immanuel litzroth ilitzr...@gmail.comwrote: If there were some kind of make-dep for lilypond it could even generate these dependencies automaticaly, like it happens for C (the compiler generates dependencies when passed the correct flags). This should not be too hard to brew up? Immanuel On Tue, Sep 10, 2013 at 10:47 AM, Jacques Menu jacques.m...@tvtmail.chwrote: Hello Carl, An approach could be to create a makefile containing: - the rules to compile LP files to PDF (fixed part); - the dependencies among LP files reflecting the presence of \include in them (variable part). Producing the makefile could be done by a script when your dropbox changes, and you could then call make to compile whatever needs to be. JM Le 10 sept. 2013 à 10:04:54, ArnoldTheresius arnold.we...@siemens.com a écrit : I allready made a C program for Windows, which does a limited 'follow the \include files' to examine the file dates. Finally it starts lilypond (command line) if one of the source files found is newer than the resulting PDF, otherwise it prompts for the question 'compile or not?'. This program is limited to - only files (source and result) in the current working directory are examined - the \include command must be the only one in the line (white space only allowed at the left), exactly one space to the string start '' character - \include commands inside a comment block ( '%{' to '%}' ) will be examined, too. Unfortunately, this program is specialized for my use. I did try (but not complete) to implement some special features. There is very little documentation in the source code. Only if you have some experiance in C programming the source code can help - but an experianced C programmer might be faster to build his own 'ly-newer' command line program form scratch than by extending my program. Feel free to ask for the C source code, if you are still interested. These are along the lines of what I was thinking of. I don't have any experience with C. My programming experience as of late is in PHP. So I gave some thought last night to using it to read the files and trace the \include dependencies. I haven't had a chance to put any code down, but I'll probably take a look at that option. The thing that was undesirable on the makefile idea in general is that having to maintain a makefile seems like an unnecessary redundancy. That is, not only do I have to reference these files in the actual LilyPond sources, but also make sure that I add the dependency information to this other file. This seems like it would lead to synchronization issues if I change which file I use in the .ly file, but not the makefile. What I'm considering from the dynamic makefile angle (which I hadn't considered prior to this discussion) is to have a trigger on all the subfolders that will pass the file name to php, which will follow the known dependency paths (music and lyrics to setting, setting to target format) to build a list of files which need to be recompiled. I suppose I could call lilypond from the php code, but I could also theoretically have it construct the makefile. This would overcome the possible race condition that exists if I use cascading monitors on each folder (for example, if I update a global file, every final output file would need to be recompiled, but if I use a touch command to trigger updates, I think some would be missed. The other advantage with PHP is that hopefully and eventually, this is going to go to a database-driven workflow using PHP, where definitions are all going to database entries to be generated on the fly as anything is updated. Regards, Carl ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Overall (global) resizing difficulties
Could you attach the problematic code, please? -- Phil Holmes - Original Message - From: Joshua Nichols To: Mailinglist lilypond-user Sent: Tuesday, September 10, 2013 6:49 AM Subject: Overall (global) resizing difficulties Has anyone encountered overall resizing issues when using: \layout { #(layout-set-staff-size 15) }I have tried to use this to scale back several more involved scores (SATB+Organ accompaniment), but if I go any less that '16' for the staff size, my notes, time signatures, words, and clefs stop shrinking. This isn't so much a problem with snippets; I recreated it with simple things, and they didn't come out with the same problem. See attached for a visual. IC, Josh -- ___ 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
Skip to Specific Bar
\version 2.16.2 I'm writing a frenched score which has large gaps between the reappearance of some staves. The piece is stuffed full of time signature changes, so I'm hoping to find a way to skip input by a specified number of bars, or to a specific bar. The only method I know is by inserting spacers or rests up to where you want to start putting in notes, but this will take forever with a piece like this. -- View this message in context: http://lilypond.1069038.n5.nabble.com/Skip-to-Specific-Bar-tp150577.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Overall (global) resizing difficulties
On Tue, Sep 10, 2013 at 1:04 PM, Joshua Nichols josh.d.nich...@gmail.comwrote: Thanks Carl! Should the myStaffSize be inside a #() or unspecified? It is outside a Scheme context, so: \paper { myStaffSize = #22 } ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re:Overall (global) resizing difficulties
Message: 1 Date: Tue, 10 Sep 2013 15:41:49 +0100 From: Phil Holmes m...@philholmes.net To: Joshua Nichols josh.d.nich...@gmail.com, Mailinglist lilypond-user lilypond-user@gnu.org Subject: Re: Overall (global) resizing difficulties Message-ID: 5BFCF5FF54814E1EA940594E7D0D45D1@Advent Content-Type: text/plain; charset=iso-8859-1 Could you attach the problematic code, please? I think this is an old and very strange problem, which is illustrated by the following code \version 2.16.2 music = \relative c' { c d e f g a b c } \score { \new Staff {\music} \layout {#(layout-set-staff-size 80)} } \score { \new Staff {\music } \layout {#(layout-set-staff-size 5)} } It's difficult to see why anyone thinks that this (mis)function should even be in LilyPond. The strangeness is only exacerbated by the fact that it's documented at the end of section 4.2.2 (Setting the Staff Size) in the 2.16 Notation Reference: Known issues and warnings layout-set-staff-size does not change the distance between the staff lines. Maybe the documentation should address how the staff size can be changed without changing the distance between the staff lines. -- Phil Holmes - Original Message - From: Joshua Nichols To: Mailinglist lilypond-user Sent: Tuesday, September 10, 2013 6:49 AM Subject: Overall (global) resizing difficulties Has anyone encountered overall resizing issues when using: \layout { #(layout-set-staff-size 15) }I have tried to use this to scale back several more involved scores (SATB+Organ accompaniment), but if I go any less that '16' for the staff size, my notes, time signatures, words, and clefs stop shrinking. This isn't so much a problem with snippets; I recreated it with simple things, and they didn't come out with the same problem. See attached for a visual. IC, Josh ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Overall (global) resizing difficulties
well - I think it's described somewhere inta manual. here's a little function to facilitate the change of those 3 values: staffSize = #(define-music-function (parser location new-size) (number?) #{ \set fontSize = #new-size \override StaffSymbol #'staff-space = #(magstep new-size) \override StaffSymbol #'thickness = #(magstep new-size) #}) music = \relative c' { c d e f g a b c } \new Staff \with {\staffSize #-16 } \music \score { \new Staff \with {\staffSize #16 } \music } hth Eluze Am 10.09.2013 18:35, schrieb Patrick or Cynthia Karl: Message: 1 Date: Tue, 10 Sep 2013 15:41:49 +0100 From: Phil Holmes m...@philholmes.net To: Joshua Nichols josh.d.nich...@gmail.com,Mailinglist lilypond-user lilypond-user@gnu.org Subject: Re: Overall (global) resizing difficulties Message-ID: 5BFCF5FF54814E1EA940594E7D0D45D1@Advent Content-Type: text/plain; charset=iso-8859-1 Could you attach the problematic code, please? I think this is an old and very strange problem, which is illustrated by the following code \version 2.16.2 music = \relative c' { c d e f g a b c } \score { \new Staff {\music} \layout {#(layout-set-staff-size 80)} } \score { \new Staff {\music } \layout {#(layout-set-staff-size 5)} } It's difficult to see why anyone thinks that this (mis)function should even be in LilyPond. The strangeness is only exacerbated by the fact that it's documented at the end of section 4.2.2 (Setting the Staff Size) in the 2.16 Notation Reference: Known issues and warnings layout-set-staff-size does not change the distance between the staff lines. Maybe the documentation should address how the staff size can be changed without changing the distance between the staff lines. -- Phil Holmes - Original Message - From: Joshua Nichols To: Mailinglist lilypond-user Sent: Tuesday, September 10, 2013 6:49 AM Subject: Overall (global) resizing difficulties Has anyone encountered overall resizing issues when using: \layout { #(layout-set-staff-size 15) }I have tried to use this to scale back several more involved scores (SATB+Organ accompaniment), but if I go any less that '16' for the staff size, my notes, time signatures, words, and clefs stop shrinking. This isn't so much a problem with snippets; I recreated it with simple things, and they didn't come out with the same problem. See attached for a visual. IC, Josh ___ 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: Overall (global) resizing difficulties
Thanks Carl! Should the myStaffSize be inside a #() or unspecified? IC, Josh On Tue, Sep 10, 2013 at 11:55 AM, Carl Peterson carlopeter...@gmail.comwrote: Replying to group since I forgot to the first time... On Tue, Sep 10, 2013 at 12:54 PM, Carl Peterson carlopeter...@gmail.comwrote: I use #(set-global-staff-size __) at the top oc the document and myStaffSize = #__ in the paper block. Usually I have to play with the two to find the right combination of staff size and symbol size. Not sure if it's strictly necessary to do both, but since I define custom fonts for my documents, I seem to remember both being required for that. On Tue, Sep 10, 2013 at 12:50 PM, Joshua Nichols josh.d.nich...@gmail.com wrote: Unfortunately, I've tried to find where it stops doing this, but I cannot provide a small snippet. I'm not sure where it happens... I am happy to forward the attached .ly file for you to fiddle with. I'm sorry I can't specify a tiny example. I've tried and am getting a little frustrated (maybe fresh eyes would help). IC, Josh On Tue, Sep 10, 2013 at 9:41 AM, Phil Holmes m...@philholmes.netwrote: ** Could you attach the problematic code, please? -- Phil Holmes - Original Message - *From:* Joshua Nichols josh.d.nich...@gmail.com *To:* Mailinglist lilypond-user lilypond-user@gnu.org *Sent:* Tuesday, September 10, 2013 6:49 AM *Subject:* Overall (global) resizing difficulties Has anyone encountered overall resizing issues when using: \layout { #(layout-set-staff-size 15) } I have tried to use this to scale back several more involved scores (SATB+Organ accompaniment), but if I go any less that '16' for the staff size, my notes, time signatures, words, and clefs stop shrinking. This isn't so much a problem with snippets; I recreated it with simple things, and they didn't come out with the same problem. See attached for a visual. IC, Josh -- ___ 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 ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Overall (global) resizing difficulties
Joshua Nichols josh.d.nich...@gmail.com writes: Unfortunately, I've tried to find where it stops doing this, but I cannot provide a small snippet. I'm not sure where it happens... I am happy to forward the attached .ly file for you to fiddle with. I'm sorry I can't specify a tiny example. I've tried and am getting a little frustrated (maybe fresh eyes would help). \paper { #(set-paper-size Hymn) page-count = #1 #(layout-set-staff-size 12) #(define fonts (make-pango-font-tree Book Antiqua Nimbus Sans Luxi Mono (/ 20 20))) } Cough, cough. You explicitly require your fonts to be suitable for 20 points here. Either remove the font definition, or at least use a scale factor of 12/20 instead of 20/20. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
Hi Ed, I'm writing a frenched score which has large gaps between the reappearance of some staves. The piece is stuffed full of time signature changes, so I'm hoping to find a way to skip input by a specified number of bars, or to a specific bar. The only method I know is by inserting spacers or rests up to where you want to start putting in notes, but this will take forever with a piece like this. Look in the docs for \pushToTag and \appendToTag, just above http://www.lilypond.org/doc/v2.16/Documentation/notation/different-editions-from-one-source#using-global-settings. Hope this helps! Kieren. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Overall (global) resizing difficulties
Unfortunately, I've tried to find where it stops doing this, but I cannot provide a small snippet. I'm not sure where it happens... I am happy to forward the attached .ly file for you to fiddle with. I'm sorry I can't specify a tiny example. I've tried and am getting a little frustrated (maybe fresh eyes would help). IC, Josh On Tue, Sep 10, 2013 at 9:41 AM, Phil Holmes m...@philholmes.net wrote: ** Could you attach the problematic code, please? -- Phil Holmes - Original Message - *From:* Joshua Nichols josh.d.nich...@gmail.com *To:* Mailinglist lilypond-user lilypond-user@gnu.org *Sent:* Tuesday, September 10, 2013 6:49 AM *Subject:* Overall (global) resizing difficulties Has anyone encountered overall resizing issues when using: \layout { #(layout-set-staff-size 15) } I have tried to use this to scale back several more involved scores (SATB+Organ accompaniment), but if I go any less that '16' for the staff size, my notes, time signatures, words, and clefs stop shrinking. This isn't so much a problem with snippets; I recreated it with simple things, and they didn't come out with the same problem. See attached for a visual. IC, Josh -- ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user Men Rest U Souls.ly Description: Binary data ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
Dear Ed, I have often similar problems like You. My solution is not ideal, but I hope, it helps You a bit: \version 2.16.2 globalA = { \time 4/4 s1 } globalB = { \time 3/4 s2. \time 4/4 s1 \time 5/4 s4*5 } globalC = { \time 4/4 s1 } global = { \globalA \globalB \globalC } firstStaff = \relative c' { c4 d e f c4 d e c4 d e f c4 d e f g c,1. } secondStaff = { \clef bass c1 $(mmrest-of-length globalB) c1. } \score { \new Devnull \global \new StaffGroup \new Staff \firstStaff \new Staff \secondStaff } \version 2.16.2 I'm writing a frenched score which has large gaps between the reappearance of some staves. The piece is stuffed full of time signature changes, so I'm hoping to find a way to skip input by a specified number of bars, or to a specific bar. The only method I know is by inserting spacers or rests up to where you want to start putting in notes, but this will take forever with a piece like this. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Extended mensuration signs in markup via Scheme
On Tue, 2013-09-10 at 04:39 +0200, David Kastrup wrote: Inside of markups, you can't use functions defined with define-scheme-function (their argument parsing is just not compatible with markup mode). Check out define-markup-command instead. As a note aside: case can't be used with strings as (eqv? x x) = #f David, many thanks. A few hours reading and programming later, and I'm nearly there. #(define-markup-command (mensSign layout props text) (markup?) Create the markup for an extended list of mensuration signs (interpret-markup layout props (if (string=? text C) (markup (#:musicglyph timesig.mensural44)) %.. ))) mensuration = #(define-music-function (P L mensuralTimesig .) (string? .) #{ \mark \markup { \concat { \mensSign mensuralTimesig ( % cantusMusic = \relative c' { %. \mensuration #C % This code is compiling successfully, but with two instances of programming error: Object is not a markup. However, if I edit the mensuration function and replace \mensSign mensuralTimesig with \mensSign C the errors disappear and everything works beautifully. Utterly baffling! I'd be grateful for any hints from you or any other guru. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: [ANNOUNCE] New Portfile for Frescobaldi on Mac
That is freaking awesome and a breeze to install. Thanks! -- View this message in context: http://lilypond.1069038.n5.nabble.com/ANNOUNCE-New-Portfile-for-Frescobaldi-on-Mac-tp150564p150596.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
Kieren MacMillan kieren_macmil...@sympatico.ca writes: Hi all, What Kieren mentioned is new to me too and I would be curious see, how one can use these commands in a context You've mentioned. The idea is as seen in the snippet, below, where certain music is added at the coda, using tags. Unfortunately, it doesn't seem to work. David K: What do I need to change in this snippet to get it to work as expected? Quoting the manual: Sometimes you want to splice some music at a particular place in an existing music expression. You can use `\pushToTag' and `\appendToTag' for adding material at the front or end of the `elements' of an existing music construct. Not every music construct has `elements', but sequential and simultaneous music are safe bets: global = { \tag #'intro \time 4/4 s1*3 \time 3/4 s4*3 \tag #'verse \time 5/4 s4*5*12 \tag #'bridge s4*5 \time 4/4 s1 \tag #'coda \time 2/2 s1*9 \bar |. } But you don't tag sequential or simultaneous music here, but rather \time statements. Writing \tag #'code \time 2/2 is likely what you intend here. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
David Kastrup d...@gnu.org writes: Kieren MacMillan kieren_macmil...@sympatico.ca writes: Hi all, What Kieren mentioned is new to me too and I would be curious see, how one can use these commands in a context You've mentioned. The idea is as seen in the snippet, below, where certain music is added at the coda, using tags. Unfortunately, it doesn't seem to work. David K: What do I need to change in this snippet to get it to work as expected? Quoting the manual: Sometimes you want to splice some music at a particular place in an existing music expression. You can use `\pushToTag' and `\appendToTag' for adding material at the front or end of the `elements' of an existing music construct. Not every music construct has `elements', but sequential and simultaneous music are safe bets: global = { \tag #'intro \time 4/4 s1*3 \time 3/4 s4*3 \tag #'verse \time 5/4 s4*5*12 \tag #'bridge s4*5 \time 4/4 s1 \tag #'coda \time 2/2 s1*9 \bar |. } But you don't tag sequential or simultaneous music here, but rather \time statements. Writing \tag #'code \time 2/2 is likely what you intend here. Actually, more likely \tag #'coda { \time 2/2 s1*9 } so that additional material will sit in parallel with the s1*9. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Overall (global) resizing difficulties
See David Kastrup's answer. You have to change the one in the font tree as well. On Tue, Sep 10, 2013 at 2:05 PM, Joshua Nichols josh.d.nich...@gmail.comwrote: I am getting no response with this method. Things are still odd... HOWEVER! When I changed to the default Text Font (eliminating the modified font tree), I got a normal response... So perhaps it is a bug? Or am I missing something? IC, Josh On Tue, Sep 10, 2013 at 12:12 PM, Carl Peterson carlopeter...@gmail.comwrote: On Tue, Sep 10, 2013 at 1:04 PM, Joshua Nichols josh.d.nich...@gmail.com wrote: Thanks Carl! Should the myStaffSize be inside a #() or unspecified? It is outside a Scheme context, so: \paper { myStaffSize = #22 } ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Overall (global) resizing difficulties
Replying to group since I forgot to the first time... On Tue, Sep 10, 2013 at 12:54 PM, Carl Peterson carlopeter...@gmail.comwrote: I use #(set-global-staff-size __) at the top oc the document and myStaffSize = #__ in the paper block. Usually I have to play with the two to find the right combination of staff size and symbol size. Not sure if it's strictly necessary to do both, but since I define custom fonts for my documents, I seem to remember both being required for that. On Tue, Sep 10, 2013 at 12:50 PM, Joshua Nichols josh.d.nich...@gmail.com wrote: Unfortunately, I've tried to find where it stops doing this, but I cannot provide a small snippet. I'm not sure where it happens... I am happy to forward the attached .ly file for you to fiddle with. I'm sorry I can't specify a tiny example. I've tried and am getting a little frustrated (maybe fresh eyes would help). IC, Josh On Tue, Sep 10, 2013 at 9:41 AM, Phil Holmes m...@philholmes.net wrote: ** Could you attach the problematic code, please? -- Phil Holmes - Original Message - *From:* Joshua Nichols josh.d.nich...@gmail.com *To:* Mailinglist lilypond-user lilypond-user@gnu.org *Sent:* Tuesday, September 10, 2013 6:49 AM *Subject:* Overall (global) resizing difficulties Has anyone encountered overall resizing issues when using: \layout { #(layout-set-staff-size 15) } I have tried to use this to scale back several more involved scores (SATB+Organ accompaniment), but if I go any less that '16' for the staff size, my notes, time signatures, words, and clefs stop shrinking. This isn't so much a problem with snippets; I recreated it with simple things, and they didn't come out with the same problem. See attached for a visual. IC, Josh -- ___ 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 ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Extended mensuration signs in markup via Scheme
Many thanks David, On Tue, 2013-09-10 at 20:01 +0200, David Kastrup wrote: mensuration = #(define-music-function (P L mensuralTimesig .) (string? .) #{ \mark \markup { \concat { \mensSign mensuralTimesig You probably mean \mensSign #mensuralTimesig here. Yes, I probably did :-) I've posted the resulting code in the original thread switching between halved and full note values in the fond hope that it might be some use to others. Comments/criticism (of the improving sort) welcome. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
Thanks for your answers thus far. Kieren I think I understand the concept but I can't see a way of making that work for what I'm doing. Stefan likewise I think I understand but does that mean that I would need to type out the full time signature sequence which I could then reuse for other parts? -- View this message in context: http://lilypond.1069038.n5.nabble.com/Skip-to-Specific-Bar-tp150577p150590.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
Hi all, What Kieren mentioned is new to me too and I would be curious see, how one can use these commands in a context You've mentioned. The idea is as seen in the snippet, below, where certain music is added at the coda, using tags. Unfortunately, it doesn't seem to work. David K: What do I need to change in this snippet to get it to work as expected? Thanks, Kieren. __ \version 2.16.2 \layout { \context { \Staff \RemoveEmptyStaves \override VerticalAxisGroup #'remove-first = ##t } } global = { \tag #'intro \time 4/4 s1*3 \time 3/4 s4*3 \tag #'verse \time 5/4 s4*5*12 \tag #'bridge s4*5 \time 4/4 s1 \tag #'coda \time 2/2 s1*9 \bar |. } allMusic = \relative c' { \repeat unfold 120 { c4 } } codaMusic = \relative f { \pushToTag #'coda \repeat unfold 6 { f2 } \global } \score { \new Staff \global \allMusic \new Staff \codaMusic } ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: switching between halved and full note values
Many thanks to David for his help, here and in another thread. This all started with the differing preferences of singers of polyphony, some preferring scores in original note values, and some wanting reduced values. Personally, I'll sing from anything, but I like to enter music into lilypond using halved note values, for conciseness. The end result is the code attached to this message[1]. Music entered in halved note values can be printed in full, halved, or quartered values by setting the reduction factor at line 6. The original mensural clefs, from a somewhat extended repertoire (see the mensSign function), are printed at each change of mensuration, together with an indication of the proportional tempo change (which is automatically reflected in the midi output, thanks to the articulate.ly script of Peter Chubb). There is no attempt to automate the correlation between the tempo change and the new mensuration. I hope the code is of use to others. It uses a current version of lilypond so I cannot submit it as a snippet (it's probably too long anyway). If you have a play with RF (line 6), TACTUS (line 8), and \mensuration (lines 181, 186, 188) you'll soon get the idea. -- Graham King [1] the entire Credo from the Missa Rapum Meum by Baldrick. \version 2.16.0 \include articulate.ly % Reduction Factor from original notation: #(define RF 2) % 1 for note values of original MS, 2 for halved, 4 for quartered, etc. #(define TACTUS 50) % initial tempo in beats/minute, used by tempoWholesPerMinute % set the initial tempo here so that it has global scope. % It is first used in the midi score block: % (the first number after ly:make-moment is beats-per-minute, % with the tactus on the MS semibreve) currentTempo = #(ly:make-moment TACTUS RF) newTempo = #currentTempo % initialise for first call to mensuration function. % define noteName association list (alist): #(define noteName '((4 . maxima.) (6 . maxima) (8 . longa.) (12 . longa) (16 . breve.) (24 . breve) (32 . 1.) (48 . 1) (64 . 2.) (96 . 2) (128 . 4.) (192 . 4) (256 . 8.) (384 . 8) (512 . 16.) (768 . 16) (1024 . 32.) (1536 . 32) (2048 . 64.) (3072 . 64) (4096 . 128.) (6144 . 128))) % the list of inverted pairs: ((maxima . 4) .) : #(define invNoteName (map (lambda(s) (cons(cdr s) (car s))) noteName)) #(define-markup-command (mensSign layout props text) (markup?) Create the markup for an extended list of mensuration signs. % Grateful acknowledgment to David Kastrup for Scheme help. (interpret-markup layout props (if (string=? text C) (markup (#:musicglyph timesig.mensural44)) (if (string=? text cutC) (markup (#:musicglyph timesig.mensural22)) (if (string=? text Cdot) (markup (#:musicglyph timesig.mensural64)) (if (string=? text cutCdot) (markup (#:musicglyph timesig.mensural68)) (if (string=? text O) (markup (#:musicglyph timesig.mensural32)) (if (string=? text cutO) (markup (#:musicglyph timesig.mensural34)) (if (string=? text cutOdot) (markup (#:musicglyph timesig.mensural98)) (if (string=? text revC) (markup (#:musicglyph timesig.mensural24)) (if (string=? text revCdot) (markup (#:musicglyph timesig.mensural68alt)) (if (string=? text C3/2) (markup (#:line ((markup (#:musicglyph timesig.mensural44)) (#:fontsize -4 #:column (3 2)) ))) (if (string=? text cutC3/2) (markup (#:line ((markup (#:musicglyph timesig.mensural22)) (#:fontsize -4 #:column (3 2)) ))) (if (string=? text C3) (markup (#:line ((markup (#:musicglyph timesig.mensural44)) (#:fontsize 0 #:raise -1 3)) )) (if (string=? text C2) (markup (#:line ((markup (#:musicglyph timesig.mensural44)) (#:fontsize 0 #:raise -1 2)) )) (if (string=? text O2) (markup (#:line ((markup (#:musicglyph timesig.mensural32)) (#:fontsize 0 #:raise -1 2)) )) (if (string=? text 3) (markup (#:fontsize 0 #:raise -1 3)) ))) ) ) % Debugging: display a moment plus some text. % Returns its moment argument so can be used in-line. #(define (display-moment text m) (display text) (display (list (ly:moment-main-numerator m) / (ly:moment-main-denominator m))) m ) % mensuration function by GK. Usage: %\mensuration mensuralTimesig oldNote newNote newTimeNum newTimeDenom %produces: X (old = new) % T %where X is
Re: [ANNOUNCE] New Portfile for Frescobaldi on Mac
Installation was very easy and almost everything is working. However, in order to use MIDI, I still have to manually start Qsynth to provide Frescobaldi with a fluidsynth output port. Is there a simple way to bypass this step or automate it from within Frescobaldi? Stan On Sep 10, 2013, at 6:09 AM, Davide Liessi davide.lie...@gmail.com wrote: Dear Mac OS X Frescobaldi users, [from http://lists.gnu.org/archive/html/lilypond-user/2013-09/msg00030.html] I am currently fine tuning a new version of the Portfile that automatically creates also the application bundle. I just need to test it on 10.7 and 10.8 machines (I run 10.6 and have occasional access to those machines) and then I'll publish it into the master branch of my repository. I'll announce to the list when this will happen (in a couple of days, I hope). I am pleased to announce that a new version of my Portfiles for Frescobaldi installation through MacPorts is publicly available in my GitHub repository (https://github.com/dliessi/ports). New features include the possibility to build a clickable application bundle and the inclusion of some useful patches for system language handling and automatic detection of default LilyPond installation. You'll find instructions on how to install/upgrade in my repository's home page. If you need further instructions or if you run into any problems, don't hesitate to contact me, either sending me an email message or opening an issue on GitHub (https://github.com/dliessi/ports/issues). I would like to publicly thank Stefan Vollmar for his help in testing my Portfiles. Best wishes. Davide ___ 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: Overall (global) resizing difficulties
Message: 1 Date: Tue, 10 Sep 2013 18:56:09 +0200 From: Eluze elu...@gmail.com To: lilypond-user@gnu.org Subject: Re: Overall (global) resizing difficulties Message-ID: 522f4f29.9010...@gmail.com Content-Type: text/plain; charset=iso-8859-1; Format=flowed well - I think it's described somewhere inta manual. here's a little function to facilitate the change of those 3 values: What does it refer to here? staffSize = #(define-music-function (parser location new-size) (number?) #{ \set fontSize = #new-size \override StaffSymbol #'staff-space = #(magstep new-size) \override StaffSymbol #'thickness = #(magstep new-size) #}) music = \relative c' { c d e f g a b c } \new Staff \with {\staffSize #-16 } \music \score { \new Staff \with {\staffSize #16 } \music } I am afraid I don't understand the function of the staffSize function. The following snippet produces four identical, to my eyes, outputs: B e g i n S n i p p e t \version 2.16.2 music = \relative c' { c d e f g a b c } \new Staff \music \score { \new Staff \music } staffSize = #(define-music-function (parser location new-size) (number?) #{ \set fontSize = #new-size \override StaffSymbol #'staff-space = #(magstep new-size) \override StaffSymbol #'thickness = #(magstep new-size) #}) \new Staff \with {\staffSize #-16 } \music \score { \new Staff \with {\staffSize #16 } \music } E n d S n i p p e t What would a new-size value of -16 mean? Does anyone not agree with me that layout-set-staff-size is nonsensical and nonworking? And that the documentation should document exactly what it does? and how the staff size can be changed without changing the distance between staff lines? (I feel like I'm in a Kafka novel here.) hth Eluze Am 10.09.2013 18:35, schrieb Patrick or Cynthia Karl: Message: 1 Date: Tue, 10 Sep 2013 15:41:49 +0100 From: Phil Holmes m...@philholmes.net To: Joshua Nichols josh.d.nich...@gmail.com,Mailinglist lilypond-user lilypond-user@gnu.org Subject: Re: Overall (global) resizing difficulties Message-ID: 5BFCF5FF54814E1EA940594E7D0D45D1@Advent Content-Type: text/plain; charset=iso-8859-1 Could you attach the problematic code, please? I think this is an old and very strange problem, which is illustrated by the following code \version 2.16.2 music = \relative c' { c d e f g a b c } \score { \new Staff {\music} \layout {#(layout-set-staff-size 80)} } \score { \new Staff {\music } \layout {#(layout-set-staff-size 5)} } It's difficult to see why anyone thinks that this (mis)function should even be in LilyPond. The strangeness is only exacerbated by the fact that it's documented at the end of section 4.2.2 (Setting the Staff Size) in the 2.16 Notation Reference: Known issues and warnings layout-set-staff-size does not change the distance between the staff lines. Maybe the documentation should address how the staff size can be changed without changing the distance between the staff lines. -- Phil Holmes - Original Message - From: Joshua Nichols To: Mailinglist lilypond-user Sent: Tuesday, September 10, 2013 6:49 AM Subject: Overall (global) resizing difficulties Has anyone encountered overall resizing issues when using: \layout { #(layout-set-staff-size 15) }I have tried to use this to scale back several more involved scores (SATB+Organ accompaniment), but if I go any less that '16' for the staff size, my notes, time signatures, words, and clefs stop shrinking. This isn't so much a problem with snippets; I recreated it with simple things, and they didn't come out with the same problem. See attached for a visual. IC, Josh ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user -- next part -- An HTML attachment was scrubbed... URL: http://lists.gnu.org/archive/html/lilypond-user/attachments/20130910/234d33a5/attachment.html -- Message: 2 Date: Tue, 10 Sep 2013 19:00:34 +0200 From: David Kastrup d...@gnu.org To: lilypond-user@gnu.org Subject: Re: Overall (global) resizing difficulties Message-ID: 87txhspq6l@fencepost.gnu.org Content-Type: text/plain Joshua Nichols josh.d.nich...@gmail.com writes: Unfortunately, I've tried to find where it stops doing this, but I cannot provide a small snippet. I'm not sure where it happens... I am happy to forward the attached .ly file for you to fiddle with. I'm sorry I can't specify a tiny example. I've tried and am getting a little frustrated (maybe fresh eyes would help). \paper { #(set-paper-size Hymn) page-count = #1 #(layout-set-staff-size 12) #(define fonts (make-pango-font-tree Book Antiqua Nimbus Sans Luxi Mono
Re: switching between halved and full note values
On Tue, 2013-09-10 at 20:43 +0100, Graham King wrote: The original mensural clefs, Uh, I did of course mean, The original mensuration signs... ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
Hi David, Thanks! That does the trick. Below is the snippet as I was envisioning it. I believe it satisfies the OP request: I'm writing a frenched score which has large gaps between the reappearance of some staves. The piece is stuffed full of time signature changes, so I'm hoping to find a way to skip input by a specified number of bars, or to a specific bar. The only method I know is by inserting spacers or rests up to where you want to start putting in notes, but this will take forever with a piece like this. Hope it helps! Kieren. _ \version 2.16.2 \layout { \context { \Staff \RemoveEmptyStaves \override VerticalAxisGroup #'remove-first = ##t } } global = { \tag #'intro \time 4/4 s1*3 \time 3/4 s4*3 \tag #'verse \time 5/4 s4*5*12 \tag #'bridge s4*5 \time 4/4 s1 \tag #'coda \time 2/2 s1*9 \bar |. } allMusic = \relative c' { \repeat unfold 120 { c4 } } codaMusic = \relative f { \repeat unfold 6 { f2 } } \score { \new Staff \global \allMusic \new Staff \pushToTag #'coda \codaMusic \global } ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
I've tried it and not succeeded with it so far, but before I copy and paste code here, can I ask what the \global tag is doing in your snippet? It seems to me like it's laying out a map of the time signature change in a piece. Is this the recommended way to go about this? Up till now I've just written all the time changes into the first staff as I put the notes in. -- View this message in context: http://lilypond.1069038.n5.nabble.com/Skip-to-Specific-Bar-tp150577p150605.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: midi doesn't work with custom Voice contexts
2013/9/10 Paul Morris p...@paulwmorris.com: Hi David, David Nalesnik-2 wrote I've never been able to edit my snippets after they have been approved. What you can do is post a new snippet: copy the old one, change it, and give it a title like Defining a Custom Staff Context [corrected]. The person who reviews it will then replace the old one. Ah, right! I had forgotten that. Thanks for the reminder. I just uploaded the improved version here: http://lsr.dsi.unimi.it/LSR/Item?u=1id=888 Thanks again! -Paul Snippets exchanged. http://lsr.dsi.unimi.it/LSR/Snippet?id=882 Cheers, Harm ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
Dear Ed, You would *once* type out the full time signature sequence in a variable. You could use then the $(mmrest-of-length variable)-construct in as many voices You need. What Kieren mentioned is new to me too and I would be curious see, how one can use these commands in a context You've mentioned. Thanks for your answers thus far. Kieren I think I understand the concept but I can't see a way of making that work for what I'm doing. Stefan likewise I think I understand but does that mean that I would need to type out the full time signature sequence which I could then reuse for other parts? ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Extended mensuration signs in markup via Scheme
Graham King lilyp...@tremagi.org.uk writes: On Tue, 2013-09-10 at 04:39 +0200, David Kastrup wrote: Inside of markups, you can't use functions defined with define-scheme-function (their argument parsing is just not compatible with markup mode). Check out define-markup-command instead. As a note aside: case can't be used with strings as (eqv? x x) = #f David, many thanks. A few hours reading and programming later, and I'm nearly there. #(define-markup-command (mensSign layout props text) (markup?) Create the markup for an extended list of mensuration signs (interpret-markup layout props (if (string=? text C) Since you use an argument of markup?, you might want to use equal? instead of string=? here. Otherwise, if the argument is something like \box { f } you get into trouble. (markup (#:musicglyph timesig.mensural44)) %.. ))) mensuration = #(define-music-function (P L mensuralTimesig .) (string? .) #{ \mark \markup { \concat { \mensSign mensuralTimesig You probably mean \mensSign #mensuralTimesig here. ( % cantusMusic = \relative c' { %. \mensuration #C % This code is compiling successfully, but with two instances of programming error: Object is not a markup. Probably because of what you return when (if (string=? mensuralTimesig C) ... goes into the else part. However, if I edit the mensuration function and replace \mensSign mensuralTimesig with \mensSign C the errors disappear and everything works beautifully. Note that \mensSign mensuralTimesig is the same as \mensSign mensuralTimesig and probably not what you expected. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Overall (global) resizing difficulties
I am getting no response with this method. Things are still odd... HOWEVER! When I changed to the default Text Font (eliminating the modified font tree), I got a normal response... So perhaps it is a bug? Or am I missing something? IC, Josh On Tue, Sep 10, 2013 at 12:12 PM, Carl Peterson carlopeter...@gmail.comwrote: On Tue, Sep 10, 2013 at 1:04 PM, Joshua Nichols josh.d.nich...@gmail.comwrote: Thanks Carl! Should the myStaffSize be inside a #() or unspecified? It is outside a Scheme context, so: \paper { myStaffSize = #22 } ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Overall (global) resizing difficulties
2013/9/11 Patrick or Cynthia Karl pck...@mac.com: Date: Tue, 10 Sep 2013 18:56:09 +0200 From: Eluze elu...@gmail.com To: lilypond-user@gnu.org Subject: Re: Overall (global) resizing difficulties well - I think it's described somewhere inta manual. here's a little function to facilitate the change of those 3 values: What does it refer to here? staffSize = #(define-music-function (parser location new-size) (number?) #{ \set fontSize = #new-size \override StaffSymbol #'staff-space = #(magstep new-size) \override StaffSymbol #'thickness = #(magstep new-size) #}) music = \relative c' { c d e f g a b c } \new Staff \with {\staffSize #-16 } \music \score { \new Staff \with {\staffSize #16 } \music } I am afraid I don't understand the function of the staffSize function. The following snippet produces four identical, to my eyes, outputs: B e g i n S n i p p e t \version 2.16.2 music = \relative c' { c d e f g a b c } \new Staff \music \score { \new Staff \music } staffSize = #(define-music-function (parser location new-size) (number?) #{ \set fontSize = #new-size \override StaffSymbol #'staff-space = #(magstep new-size) \override StaffSymbol #'thickness = #(magstep new-size) #}) \new Staff \with {\staffSize #-16 } \music \score { \new Staff \with {\staffSize #16 } \music } E n d S n i p p e t Eluze's example works --- with 2.17.25 For 2.16.2 you could use: \version 2.16.2 music = \relative c' { c d e f } staffSize = #(define-scheme-function (parser location new-size) (number?) #{ \with { fontSize = #new-size \override StaffSymbol #'staff-space = #(magstep new-size) \override StaffSymbol #'thickness = #(magstep new-size) } #}) \new Staff \with { \staffSize #-16 } \music \new Staff \with { \staffSize #16 } \music What would a new-size value of -16 mean? Well, what does \fontsize #16 (#-16) do in \markup? Making it larger (smaller). Here fontSize, 'staff-space and 'thickness of the lines are modified. I feel I don't get the point of the question. Does anyone not agree with me that layout-set-staff-size is nonsensical and nonworking? And that the documentation should document exactly what it does? and how the staff size can be changed without changing the distance between staff lines? (I feel like I'm in a Kafka novel here.) There were some discussions about layout-set-staff-size some time/years ago. Can't find it right now. hth Eluze [deleting billions of lines] Cheers, Harm ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: LSR - Adding extra fingering with scheme - Needs update.
2013/9/10 David Kastrup d...@gnu.org: Thomas Morley thomasmorle...@gmail.com writes: #(define (make-text-script x) (make-music 'TextScriptEvent 'direction DOWN 'text x)) #(define (add-text-script m x) (cond ((music-is-of-type? m 'event-chord) (set! (ly:music-property m 'elements) (cons (make-text-script x) (ly:music-property m 'elements ((music-is-of-type? m 'note-event) (set! (ly:music-property m 'articulations) (cons (make-text-script x) (ly:music-property m 'articulations (else (let ((es (ly:music-property m 'elements)) (e (ly:music-property m 'element))) (map (lambda (y) (add-text-script y x)) es) (for-each ... (if (ly:music? e) (add-text-script e x)) ))) m) #(define (add-text-script m x) (define (append-property! music property element) (set! (ly:music-property music property) (append! (ly:music-property music property) (list element))) music) (map-some-music (lambda (m) (cond ((music-is-of-type m 'event-chord) (append-property! m 'elements (make-text-script x))) ((music-is-of-type m 'note-event) (append-property! m 'articulations (make-text-script x))) ;; don't recurse into other rhythmic events ((music-is-of-type m 'rhythmic-event) m) ;; recurse: (else #f))) m)) That's the proper variant (as opposed to the original, it _returns_ the modified music however). One has to note that the improper variant will generally work as well: adding material to 'articulations works for both 'event-chord as well as 'note-event so one can drop the distinction. It's not what LilyPond itself would do, however. Of course, not recursing into other rhythmic events is just an optimization that's not particularly important. -- David Kastrup Hi David, first let me thank you for your code. It's by far better and more elegant as my own. While I was going to add a revised but unapproved snippet to the the LSR marking it [needs upgrade], http://lsr.dsi.unimi.it/LSR/Item?u=1id=887 I noticed that the original snippet was tagged docs ! And indeed, I found it in /Documentation/snippets: 'adding-extra-fingering-with-scheme.ly'. But not in /snippets/new And it seems not to be in the online snippets-manual or elsewhere. I thought even a broken, but compiling snippet should appear. ? Cheers, Harm ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Overall (global) resizing difficulties
Patrick or Cynthia Karl wrote Tuesday, September 10, 2013 11:11 PM Does anyone not agree with me that layout-set-staff-size is nonsensical and nonworking? And that the documentation should document exactly what it does? and how the staff size can be changed without changing the distance between staff lines? (I feel like I'm in a Kafka novel here.) I've not been following this thread, but I think layout-set-staff-size is not useful here. (I can't see what it does either.) Have you looked at http://www.lilypond.org/doc/v2.17/Documentation/notation/distances-and-measurements This explains how to change the staff-size locally, and how magstep is invoked to make a corresponding change to the font. Trevor ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
Hi Ed, can I ask what the \global tag is doing in your snippet? It seems to me like it's laying out a map of the time signature change in a piece. Is this the recommended way to go about this? Up till now I've just written all the time changes into the first staff as I put the notes in. I don't know about recommended, but I certainly prefer laying out the code that way. My 'global' variable tends to have all score-level items: time signature changes (if score-level), key signature changes (if score-level), and marks (e.g. MetronomeMark, RehearsalMark), and so on. Hope this helps! Kieren. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
Thanks yes it does help, although I can't see why you'd add the \global section after the \codaMusic ? -- View this message in context: http://lilypond.1069038.n5.nabble.com/Skip-to-Specific-Bar-tp150577p150614.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Overall (global) resizing difficulties
Patrick or Cynthia Karl pckarl at mac.com writes: Message: 1 Date: Tue, 10 Sep 2013 18:56:09 +0200 From: Eluze eluzew at gmail.com To: lilypond-user at gnu.org Subject: Re: Overall (global) resizing difficulties Message-ID: 522F4F29.9010607 at gmail.com Content-Type: text/plain; charset=iso-8859-1; Format=flowed well - I think it's described somewhere inta manual. here's a little function to facilitate the change of those 3 values: ... snip... Message: 2 Date: Tue, 10 Sep 2013 19:00:34 +0200 Well, I don't have an answer to the question, but... a reminder... it is VERY uncool to quote an *entire digest* when you're replying to only one message. Bad workflow: 1. Reply 2. Write 3. Send Good workflow: 1. Reply 2. Write 3. Remove irrelevant quotes 4. Send IMO step 3 is not optional. hjh ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
Hi Ed, I can't see why you'd add the \global section after the \codaMusic ? \pushToTag takes two parameters: the music you're trying to push (in this case, the notes that appear in the second staff right at the coda), and the music which contains the target tag (in this case, the \global variable with the original section tags). Hope that helps! Kieren. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Skip to Specific Bar
Kieren MacMillan kieren_macmillan at sympatico.ca writes: can I ask what the \global tag is doing in your snippet? It seems to me like it's laying out a map of the time signature change in a piece. Is this the recommended way to go about this? Up till now I've just written all the time changes into the first staff as I put the notes in. I don't know about recommended, but I certainly prefer laying out the code that way. My 'global' variable tends to have all score-level items: time signature changes (if score-level), key signature changes (if score-level), and marks (e.g. MetronomeMark, RehearsalMark), and so on. To explain the concrete benefit a little more: If you're making only a score, it doesn't matter. If you need to make parts, a \global variable will save you from having to extract time signatures and rehearsal marks from the first part. These score- level marks do NOT automatically transfer from the music expression for staff 1 into the music expressions for other staves when laying out parts (where the music expression for staff 1 is not present). Lilypond has a different philosophy from other notation packages. You don't extract parts from a score. You write the parts as components -- variables -- and then lay out the variables into whatever formats are required. A score's music expression creates several staves and fills them with content defined in variables. A part creates (usually) a single staff and fills it with the variables relevant to that part -- omitting variables for other parts. Anything that needs to be shared across multiple parts should go in a separate variable, or group of variables. hjh ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
mea máxima culpa
From: Thomas Morley thomasmorle...@gmail.com To: Patrick or Cynthia Karl pck...@mac.com [deleting billions of lines] From: James Harkins jamshar...@gmail.com Patrick or Cynthia Karl pckarl at mac.com writes: Well, I don't have an answer to the question, but... a reminder... it is VERY uncool to quote an *entire digest* when you're replying to only one message. I am so sorry and will try to do much better. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: mea máxima culpa
Patrick or Cynthia Karl pck...@mac.com writes: From: Thomas Morley thomasmorle...@gmail.com To: Patrick or Cynthia Karl pck...@mac.com [deleting billions of lines] From: James Harkins jamshar...@gmail.com Patrick or Cynthia Karl pckarl at mac.com writes: Well, I don't have an answer to the question, but... a reminder... it is VERY uncool to quote an *entire digest* when you're replying to only one message. I am so sorry and will try to do much better. Maybe the reply-to header of the digest should not even point to the list? Replying to a digest makes no sense with regard to message threading anyway. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: mea máxima culpa
On Sep 10, 2013, at 11:14 PM, David Kastrup d...@gnu.org wrote: Patrick or Cynthia Karl pck...@mac.com writes: From: Thomas Morley thomasmorle...@gmail.com To: Patrick or Cynthia Karl pck...@mac.com [deleting billions of lines] From: James Harkins jamshar...@gmail.com Patrick or Cynthia Karl pckarl at mac.com writes: Well, I don't have an answer to the question, but... a reminder... it is VERY uncool to quote an *entire digest* when you're replying to only one message. I am so sorry and will try to do much better. Maybe the reply-to header of the digest should not even point to the list? Replying to a digest makes no sense with regard to message threading It would be logically consistent since the reply-to header is not set to the list for non-digest subscribers, but what would be the alternative? no-reply-lilyp...@gnu.org? ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user