cat tmp.ly
> \version "2.22.0"
>
> #(begin
> (use-modules (guile-user))
> (if (defined? 'foo) (ly:message "yes") (ly:message "no"))
> )
>
> \score {
> c''1
> }
> lanfear@x35g$ /usr/local/lilypond-cairo/bin/lilypond -e '(define foo
> #t)' --pdf -dbackend=cairo tmp.ly
use-modules only imports exported symbols and you used define instead of
define-public .
--
David Kastrup
I thought choosing /dev/null would be ok as
> (most of) the output files are created, written and closed directly
> by the cairo library.
At least the calling convention appears only to assume that every
backend will need an output _port_. %make-void-port may fit the bill
though I haven't checked.
--
David Kastrup
}
> %%%
>
> ... the text scrolls off the page (see attached). I can guess why
> \wordwrap doesn't work the way I want: it just sees one big string. Is
> there a way to get the command line string to break or wrap at the
> spaces?
This may be too obvious, but anything wrong with \wordwrap-string ?
--
David Kastrup
things as they were before (since then forgetting to
revert is taken care of by the code only being written once). In that
case the pairing is "automatic" and you cannot really make a mistake
(well, you can when user-provided code does some unbalanced stuff in the
middle, but that aside).
--
David Kastrup
whatever override does the trick for some job can be converted
into a tweak (which you need inside of chords) by using \single before
it.
--
David Kastrup
a duration, not a string:
>
>
> \markup \note { 16 } #UP
>
It's worth noting that like other syntax changes, convert-ly is able to
update the syntax for one \version to the current one.
--
David Kastrup
than standard music notation. They make it easier to act out music and
harder to read and reason about music and change it on the fly. Like
phonetic scripts for languages, they haven't really caught on
significantly in spite of having a small fan base.
--
David Kastrup
ming tsang writes:
> Hi, David:
>
> Sorry I left the #'( ). Now I removed it
The whole line rather than just the tick mark? Then you change from a
line that is being ignored to a line that isn't there in the first
place.
> and I get the same error message.
--
David Kastrup
gt; [image: image.png]
I read
#'(define modt (stat:mtime (stat filen)))
#(define modts(strftime "%m/%d/%Y %H:%M:%S" (localtime modt)))
and the first line does _nothing_ since the define expression is
quoted. LilyPond reads the define without executing it. So in the next
line
Aaron Hill writes:
> On 2021-06-29 1:45 pm, David Kastrup wrote:
>> Aaron Hill writes:
>>> Hrm... would it be better to explicitly alist-copy the result from
>>> ly:assoc-get? Actually, I guess you could do:
>>>
>>> (alist-cons 'class ... (ali
Aaron Hill writes:
> On 2021-06-29 1:20 pm, David Kastrup wrote:
>>>
>>> \version "2.22.0"
>>> SvgAddClassName =
>>> #(lambda (ctxt)
>>> (define (add-class-name grob)
>>>(let* ((attribs (ly:grob-property grob 'output
rs
> ((grob-interface engraver grob source)
> (add-class-name grob)
That assoc-set! looks like a stinker. Doesn't it mess with shared data
structures?
>
> \layout { \context { \Score \consists \SvgAddClassName } }
>
> { \tweak output-attributes #'((class . foo)) b'4 }
>
>
>
> -- Aaron Hill
>
>
--
David Kastrup
hread:
>
> https://lists.gnu.org/archive/html/lilypond-user/2021-06/msg00225.html
Well, hard to realise what the thread is about when all the posts are
deleted... I think some people mainly use Nabble, and the GNU list
archive is probably not the best interface for reading and posting.
--
David Kastrup
ilypond partcombine" (without the quotation
> marks). Should I always check to see where I end up, or was this a cached
> page, or will it perhaps be taken down at some point?
The old pages remain online, so you should always check. Or just use
the delivered documentation to start with.
--
David Kastrup
there 5 such occurrences:
>
> *
> Thanks for. your help!
I'd lean towards just "bass figures". There is no plural of "figured
bass" as such since "figured bass" is the name of the notation technique
rather than of individual bass figures.
--
David Kastrup
an any of you see what is wrong here and what must be changed to make it
> work?
Remove the 5 before the line of percents. Also maybe add a newline at
the end of the comment line.
--
David Kastrup
tag full \\
{ d r a r bes r } >> |
1
}
\new PianoStaff
<<
\new Lyrics \with { \consists \Dia_engraver a b' }
\removeWithTag full \treble
\new Staff \treble
\new Staff \relative
{ \clef "treble" \freeBass "1"
r8 d'32 s16. c32 s16. bes32 s16. a32[ cis] s16
\clef "bass" \stdBass "Master"
<< { r16 ^"b" r ^"am" r ^"gm" |
1^"a" } \\
{ d8_"D" c_"C" bes_"B" | a1_"A" }
>>
}
>>
--
David Kastrup
happens. I installed the apleton live lite software to check
> whether there was a general error. However apleton reacted to
> keystrokes . What did I do wrong or what has been left out?
Did you enable the Frescobaldi Midi input feature? What settings have
you tried?
--
David Kastrup
ontext-property will take
the property from where ly:context-property-where-defined will locate it
anyway.
Using ly:context-property-where-defined can be useful when you want to
_overwrite_ a property at the level it is defined. For reading it, it
is quite pointless.
--
David Kastrup
how can
> I get this to be displayed during compilation of a score?
>
> David
\context Staff \applyContext #(lambda (c)
(display (ly:context-property c
'keepAliveInterfaces)))
--
David Kastrup
r and (e.g.) \tieFromNothing
>
> - for repeats: a pair of (e.g.) \openingTie & \closingTie or
> \tieToRepeat & \tieFromRepeat ?
One thing about \laissezVibrer vs a repeat-ending semitie is that the
look may be the same, but the Midi rendition (or some MusicXML
conversion) should clearly be different.
--
David Kastrup
ots of pitches in my music where there should be rests. But somehow
> it doesn't seem to have lodged itself in my brain.
>
> Perhaps I'm getting too old for this!
Still waiting for an actual _example_ of what you want to be able to
write.
--
David Kastrup
Mark Knoop writes:
> At 12:15 on 30 Apr 2021, David Kastrup wrote:
>> David Sumbler writes:
>>> How can I access the pitch value of this most recent note for use in a
>>> Scheme function after some rests?
>>
>> Other value-propating mechanism
David Sumbler writes:
> On Fri, 2021-04-30 at 12:15 +0200, David Kastrup wrote:
>> David Sumbler writes:
>> > In a \relative{ } passage, in order for Lilypond to work out
>> > theabsolute pitch of a note, it must have a record of the absolute
>> > pitchof t
ring
with, so it would probably make more sense to present the problem you
are trying to solve rather than guess about the tools you think LilyPond
must be using internally.
--
David Kastrup
of \pushToTag and \endToTag I found in the
> documentation.
>
> test = { \tag #'here { \tag #'here <> } }
> {
> \pushToTag #'here c'
> \pushToTag #'here e'
> \pushToTag #'here g' \test
> \appendToTag #'here c'
> \appendToTag #'here e'
> \appendToTag #'here g' \test
> }
>
> In my opinion this is a fantastic zen exercise. You read it, you
> appreciate the esthetic aspects (output also!), and you can meditate
> on it. But I think it is also very well done to make people (people
> like me, of course) don't understand how \pushToTag and \appendToTag
> work. It is possible that I have already moaned about this, sorry.
Well, the whole point of this thread is that I am not satisfied with
what I wrote there, and it doesn't extend to the new functionality in a
sane manner either. That example makes some sense for a regtest since
it checks a significant amount of stuff with a reasonably small amount
of code.
It does not really have much of a place in user-level documentation
except as a very clear indication that someone was too lazy or
uncreative to actually write useful documentation yet.
It more or less indicates the place where someone™ should put something
more useful at some point of time.
--
David Kastrup
g issued in a single voice context) "string chord"
(often encountered in solo music for string instruments) is not (yet?)
properly supported by LilyPond.
So I would not mention it, not block it, not test for it. The problem
is that trying to enforce some duration makes no sense when adding to <>
anyway, so you'd need to distinguish the 0-case, and it's not clear
which duration should prevail and whether that would be different
between \pushToTag and \appendToTag .
Do you see why I hate writing documentation and regtests?
--
David Kastrup
e beginners tend to be tripped up by the effects of inserting
additional "redundant" ( ) groups in code.
--
David Kastrup
don't like the sample code in the documentation and the regtest: feel
free to submit something better.
--
David Kastrup
r suggestion? Maybe a warning in
> `convert-ly`?
Frankly, my suggestion would be to make the call-signature of
unfold-repeats upwards compatible (optional argument comes last and is
actually optional). Of course at the cost of breaking every caller
introduced since the change.
--
David Kastrup
Werner LEMBERG writes:
> From: David Kastrup
> Subject: Re: maple leaf rag mutopia
> Date: Tue, 27 Apr 2021 13:31:22 +0200
>
>> Werner LEMBERG writes:
>>
>>>>> Replace \applyMusic #unfold-repeats with \unfoldRepeats ?
>>>
>>> Missi
d before that already was \unfoldrepeats .
So it's a bit tricky to guess just where to apply a convert-ly rule and
what it should do.
--
David Kastrup
<1>: Wrong number of arguments to #
>
>
> Any suggestions?
Replace \applyMusic #unfold-repeats with \unfoldRepeats ?
--
David Kastrup
uot; -> \markup-command "
\partcombine* -> \partCombine, \autochange -> \autoChange
scripts.trilelement -> scripts.trillelement
\fermataMarkup -> \fermata
remove \\powerChords, deprecate banter-chord-names and jazz-chord-names
\compressFullBarRests -> \compressEmptyMeasures
""")
--
David Kastrup
quoted.
> So this is was I wanted to write:
>
> music = {a a \tag#'here {} a}
>
>
> Is that right? Can \tag act on {} instead of {a} or ?
Yes, {} is fine. But even if you could push ~ here, the result would be
equivalent to
music = {a a a~}
since articulations "happen" at the start of the event they are attached
to.
--
David Kastrup
ng at what it is working with. There'd likely be a point in making
it a bit smarter, like making it push articulations on rhythmic events
and complain about known mismatches of pusher and pushee.
--
David Kastrup
David Kastrup writes:
> Gianmaria Lari writes:
>
>> Be patient with me.
>>
>> I expect this to generate {a~a} but it generates {a a} . Why?
>>
>> \version "2.23.2"
>> music = {a \tag#'here a}
>> {\pushToTag #'here ~ \music }
>>
needs to be a sequential music
expression.
So what you can push is <>~ though the tie event needs to occur at the
first note rather than the second.
So:
\version "2.23.2"
music = {\tag#'here {a} a}
{\pushToTag #'here <>~ \music }
--
David Kastrup
ersion "2.19.80"
> \relative c' {
> \key es\major
> \clef bass
> \set fingeringOrientations = #'(down)
> c-1^\( bes-2 as-3 g-4 |
> f-1 es-2 d-3 es-2\) |
> }
>
> Best regards,
> Helge
fingeringOrientations only works inside of chords as it is only there
that the New_fingering_engraver is responsible.
--
David Kastrup
on".
Try \displayMusic rather than \displayLilyMusic for more details.
--
David Kastrup
n".
> But Aaron code and Jean code behave differently. Have a look here
> This does not work.
>
> \version "2.23.2"
> #(define (extract music)
>(first (ly:music-property music 'elements)))
>
> { #(first-element #{ \chordmode {c} #}) }
You define a function called "extract" but call a function called
"first-element".
--
David Kastrup
Valentin Petzel writes:
> But actually, an even better way would probably be
>
> music = \new Voice \fixed c { <>[ \ja \jb <>] }
More like
music = \new Voice \fixed c { <>[ \ja <>] \jb }
--
David Kastrup
;\clef "treble_8" c1
>
> }
>
> This displays c as c’ in the score, and plays it as c in the midi.
You can also just say
\transposition c
to get the Midi one octave lower.
--
David Kastrup
don't need the actual dimensions I think, just the min/max of
horizontal and vertical skylines, respectively.
--
David Kastrup
I wrote that I consider it likely to need some amount of C++
code in lily/stencil-integral.cc and lily/stencil-interpret.cc just like
my implementation of \with-outline did.
That was the gist of my first response which you considered
ill-informed.
--
David Kastrup
s not
> actually able to „see” where there is black stuff in an arbitrary
> stencil.
Is there a particular purpose in shifting the goalposts until we have an
insoluble problem unrelated to what Harm is asking about?
--
David Kastrup
code I think, but
not at the low level you suggest. More like adding something similar to
"with-outline" support to lily/stencil-integral.cc and
lily/stencil-interpret.cc .
--
David Kastrup
> Well, Humdrum predates Lilypond, so your hypothesis is possible, by
> quite some time. Let's hear from the original authors!
Cannot find info on Humdrum's age on its web site. Basic notename
syntax of LilyPond was taken from its MPP precursor.
--
David Kastrup
Please keep the list copied.
Gilberto Agostinho writes:
> Hi David,
>
> On 09/04/2021 12:32, David Kastrup wrote:
>> Where does the documentation suggest that \center-align (and similar)
>> does anything to a single item? It aligns the things passed to it, not
>
the documentation suggest that \center-align (and similar)
does anything to a single item? It aligns the things passed to it, not
their outside.
--
David Kastrup
assemble the notes in a voice but may not
work well in connection with \repeat tremolo .
> Consider:
>
>
> \version "2.22.0"
> \language "english"
> \relative
> { \time 3/4 \clef bass
> \repeat tremolo 12 { b,32 ds } |
> \repeat tremolo 12 { 32 } |
> }
>
>
>
> -- Aaron Hill
>
>
--
David Kastrup
red, I believe, at about the same time as
> instruments capable of taking advantage of it such as the ?clavichord,
> harpsichord, spinet, forte-piano etc.
Well, the forte-piano is typically stretch-tuned, so any tuning theories
need some adaptation to reality anyway.
It's a wonder different instruments manage to play together at all.
--
David Kastrup
Kevin Barry writes:
> On Thu, Apr 01, 2021 at 08:24:08PM +0200, David Kastrup wrote:
>
>> Sure. And even if you wanted to do this with numbers, the 12th root of
>> 2 can be calculated by doing a cube root and 2 square roots. And cube
>> roots were already
Kevin Barry writes:
> Thu, Apr 01, 2021 at 05:03:58PM +0200, David Kastrup wrote:
>> Kevin Barry writes:
>>
>> > That's why, as soon as the mathematics (root extractions) required for
>> > tempered tuning were discovered, it rapidly became the stan
Kevin Barry writes:
> Thu, Apr 01, 2021 at 05:03:58PM +0200, David Kastrup wrote:
>> Kevin Barry writes:
>>
>> > That's why, as soon as the mathematics (root extractions) required for
>> > tempered tuning were discovered, it rapidly became the stan
Kevin Barry writes:
> That's why, as soon as the mathematics (root extractions) required for
> tempered tuning were discovered, it rapidly became the standard.
I think your history of mathematics is a bit off. Seriously. And I
have no idea how you think mean-tone tunings work.
--
of a
chromatic button accordion: chords have shapes in the notation and you
recognise their shape and translate it into finger patterns. There
wouldn't be time to transform a chord into actions note by note
independently, like you'd need to do if accidentals were used
haphazardly ignoring the current harmonic context.
--
David Kastrup
ots, the
"Reply to All" button may be directly next to the "Reply to Sender"
button. I may be misinterpreting the meaning of the icons. A picture
says less than four words.
--
David Kastrup
Aaron Hill writes:
> On 2021-03-27 1:13 pm, David Kastrup wrote:
>> When I do
>> the result of
>> lilymidi --pretty /tmp/test.midi
>> [...]
>> No volume change. What am I missing?
>
> That's odd. When I compiled your file, I got a MIDI that does h
l 9, D2.1665(38)
Time 1152:
Note off: Channel 9, D2.1665(38)
Note on: Channel 9, D2.1665(38)
Time 1536:
Note off: Channel 9, D2.1665(38)
End of Track
No volume change. What am I missing?
--
David Kastrup
ween division 2 and division 3 this takes a
> stupid amount of time!)
LilyPond gives you music functions and other tools for programmatically
creating music from input, and that is essentially what you want to do
here.
--
David Kastrup
ight result in
> compatibility problems if in 10, 20 years there would be consensus
> about this and it would look completely different then Lilypond hat
> implemented it - but this is something I highly doubt.
It's not LilyPond's job to invent notation.
No matter who'd pick up the job, I'd consider it a bad idea.
--
David Kastrup
ces a print that somebody has to play. And when there is no
notation corresponding to the input, LilyPond will have a hard time
suggesting how to play things.
--
David Kastrup
muddy domain to make a major part of the syntax.
--
David Kastrup
xtuplets
that formally come in the same duration. Just like there is a
difference in
\tuplet 2/3 { c4 c4 }
and
{ c4. c4. }
Musical notation (and thus LilyPond) writes down more than what appears
in the MIDI.
--
David Kastrup
rt.
It does not indicate what note values to use visually. If we only
wanted to produce Midi, we'd not need to distinguish cis and des either.
--
David Kastrup
apart, I had great difficulty getting the phrase to repeat
> correctly. That was back in the 2.4/2.6 days ...
Ah, so you are at fault that
\relative { c=4 }
is valid music.
--
David Kastrup
"Mark Stephen Mrotek" writes:
> Roeland,
>
>
>
> Place an \acciacatura s8 before each c4 in the alternatives.
\grace s8 rather. You don't want slashes and slurs.
--
David Kastrup
ipulating the source. Could be done just
as "syntax highlighting" or as actual entry option.
Of course as actual entry option it would cause some interference with
the "identifiers can contain any non-ASCII unicode characters anywhere"
mantra. Up to now, only ASCII letters are syntactically special.
--
David Kastrup
Paul Scott writes:
> On 3/16/21 3:58 PM, David Kastrup wrote:
>> Paul Scott writes:
>>
>> I am a copyist, not a composer. I currently don’t have a MIDI
>> keyboard. I enter everything through Emacs without a mouse for pitch,
>> therefore haven’t considered to
ds. Last time I checked Frescobaldi,
it was pretty awful with legato in chord mode.
Of course it is also convenient for me as an accordion player that I can
record one rendition in a keyboard macro and then replay it several
times, with Emacs listening to different MIDI channels each time.
--
David Kastrup
ion I have just started using \absolute for
> bass clef parts and I just noticed \fixed which I will start
> experimenting with. Any other suggestions for my situation as
> described above?
>
> I will consider getting a small MIDI keyboard which would probably
> lead to experimenting with Frescobaldi.
Ah, but Emacs' MIDI input mode deals better with chorded notes.
--
David Kastrup
s generated by people doing
their best to be helpful, making other people's lives easier.
Is there a reason you think that this isn't what Kieren is doing?
--
David Kastrup
produce absolute music that is
impervious to \relative seemed like the saner option.
--
David Kastrup
an easily
copy much of your note entry to provide the rest. I probably have
it somewhere in complete form on disk, too.
--
David Kastrup
Peter Toye writes:
> Thanks for putting me right yet again. I'm not quite sure what you
> mean by 'resized'. q4 is surely legal?
Sure, but it's two chords, not one.
--
David Kastrup
Peter Toye writes:
> I asked this question some time ago, and David Kastrup was kind enough
> to put me right.
>
> The problem , as you mentioned, is in the way that numbers are used
> for durations. Consider the following code:
>
> chord =
> chord2=
>
> c1
per.staff-staff-spacing.basic-distance
is a newer development and I am not really sure that (for this alist) it
works in contexts where you could make use of it. For music
expressions, it does work in the basic use case.
--
David Kastrup
t is wrong with
#(format #f "~@r" 547)
?
--
David Kastrup
David Kastrup writes:
> David Kastrup writes:
>
>> 田村淳 writes:
>>
>>> Hello,
>>>
>>> Is there any easy way to have something like below? I mean in-line
>>> triplet notes with brackets and numbers within a footnote. I think
>>>
David Kastrup writes:
> 田村淳 writes:
>
>> Hello,
>>
>> Is there any easy way to have something like below? I mean in-line
>> triplet notes with brackets and numbers within a footnote. I think
>> that I saw something like that in LSR before but
\markup { Als Triolen ( \rhythm ) auszuführen. }
--
David Kastrup
Kieren MacMillan writes:
> Aaron,
>
>> So it just the case that you want hairpins to extend over time
> signatures? A custom engraver could automate that:
>
> THIS IS GOLD!
I think it is spelt "Gould".
--
David Kastrup
Aaron Hill writes:
> On 2021-02-27 3:10 am, David Kastrup wrote:
>> [...] Which begs the
>> question whether it would not make sense to let Rest_engraver look at
>> drum-type in the same manner it looks at pitch for the sake of
>> potentially resolving the drum-typ
would have to happen at engraving time. Which begs the
question whether it would not make sense to let Rest_engraver look at
drum-type in the same manner it looks at pitch for the sake of
potentially resolving the drum-type to staff-position mapping.
Thoughts?
--
David Kastrup
se two emails make it clearer why I want to do this.
>>
>> Dave
>
>
>
> I admit that I haven't been following this thread super closely,
>
> So I don't know if this will help you,
>
> but if you want a single object equivalent to r4 ~ 16,
>
> you can do r4*5/4
No, that kind of fill-in only works in MIDI and with multi-measure
rests. For ordinary rests, you only get a single glyph which is not the
same as r4 r16 .
--
David Kastrup
ant a repeated attack when playing, and not needing to write the
pitch again meshes nicely with that.
But I think putting ties on rests in the note entry is an awful idea, so
this motivation to extend the notation to rests appears to be too much
of stretch to me to be desirable.
--
David Kastrup
David Bellows writes:
> Hi Timothy,
>
>> David Kastrup (who probably implemented the feature) comments on the
>> design decisions here
>
> Thanks for that. That is definitely not a use-case I had anticipated
> though it's nice to see that I'm not alone in wondering a
Thomas Morley writes:
> Probably:
>
> \version "2.22.0"
>
> #(define interval #{ c' b #})
That seems like a somewhat obtuse way to write
interval = { c' b }
--
David Kastrup
rt picking contexts because of side effects rather than principal
differences or the purpose matching their name.
--
David Kastrup
u to do the typesetting, but LilyPond.
--
David Kastrup
acceptance
> requirements.
>
>
> If you agree, I'll make a quick patch.
Don't forget ly/performer-init.ly so as not to have the context
hierarchies diverge between typesetting and performing.
--
David Kastrup
music = { c''1 }
\score {
<<
\new ChoirStaff \with { \override SystemStartBracket.collapse-height = 8 } <<
\new TabStaff = "Part 1" <<
\music
>>
\new Staff
<<
\new Voice {
\music
}
>>
>>
>>
}
instead. Yes, this is somewhat insane.
--
David Kastrup
ensible to keep your objective on this mailing
list in mind, which is getting help with your notation project rather
than making converts. For that purpose, it may make more sense to
convince your readers that they are helpful and smart rather than
convince them that they are wrong.
--
David Kastrup
(starting from some, possibly temporary, key
signature) with them being exchangeable with the main notes. Now of
course there is dodecaphony, but you'll be hard put to find musicians
who have grown so much into it that they have stopped referencing scale
notes for performing music. So as performance material, there will not
be much use for that.
--
David Kastrup
David Kastrup writes:
> There are other uniform chromatic systems, like the related 2-row based
> Jankó keyboard pianos, or the respective 6+6 or Bayreuther system for
> accordions.
It's "Beyreuther system", sorry for the typo (it's named after Johannes
Beyreuther rather tha
related 2-row based
Jankó keyboard pianos, or the respective 6+6 or Bayreuther system for
accordions.
They've not made it into mainstream.
--
David Kastrup
tic
keyboard patterns all the time. Builds character.
Chromatic button accordion is one of the few chromatically organised
polyphonic instruments for which there is _no_ specific tablature in
common use (like it is for guitar, lute, and likely viol).
Walks of in-scale thirds take quite a bit of exercis
f Windows 10 to another version. Unlike
Microsoft, we don't tamper with our users' computers to upgrade without
their permission, though.
--
David Kastrup
we remove existing installers from the
download sites.
--
David Kastrup
601 - 700 of 7439 matches
Mail list logo