问题
我正在使用LilyPond为教堂合唱团排版乐谱.根据任何给定周的人数,歌曲将以各种键播放.我们有一位出色的钢琴演奏家可以演奏我们扔在她身上的任何东西,吉他手通常会以交替的和弦方式画笔,但我希望通过在我们想要的任何键上提供精美排版的乐谱来让事情变得更轻松.
所以说我们要唱我们的ABC.首先,我将采用任何可用的源代码转换并将其输入LilyPond脚本:
melody = \relative c' {
c c g g
a a g2
f f e e
d d c2 }
Run Code Online (Sandbox Code Playgroud)
我希望能够自动转置它,所以如果我想要'G'中的整个内容我将这首歌包装在\ transpose调用中,如下所示:
melody = \transpose c g \relative c' {
c c g g
a a g2
f f e e
d d c2 }
Run Code Online (Sandbox Code Playgroud)
我真正想要的是用'g'替换某些东西并多次为旋律生成输出.简单的LilyPond变量似乎在这里不起作用,到目前为止,我在定义一个方案函数时没有成功.
我暂时使用的是获取上述文件,将其称为twinkle.ly并将其转换为名为twinkle.ly.m4的M4脚本,其内容如下所示:
melody = \transpose c _key \relative c' {
c c g g
a a g2
f f e e
d d c2 }
Run Code Online (Sandbox Code Playgroud)
然后我通过执行以下行来编译while事物:
> m4 -D _key=g …
Run Code Online (Sandbox Code Playgroud) LilyPond中是否有一种方法可以在音乐结束后简单地列出与其他经文相对应的歌词,每节有一段?
(注意这个确切的问题在2001年之前就曾被问过,但第一个答案("读这本书")引用了一个死URL,而第二个(使用\context Lyrics
)对我不起作用,我得到LilyPond语法错误.)
这是一首我想写下额外经文的歌.
\header{
title = "Hello World"
}
\score {
\relative {
\time 2/4
\clef treble
\key a \major
cis''2 | a4 fis \bar "|."
}
\addlyrics {
He -- | llo world
}
\layout { }
\midi { }
}
\version "2.18.2"
Run Code Online (Sandbox Code Playgroud)
(抱歉,语法高亮显示,<!-- language: lang-lilypond -->
SO使用的Google Code Prettyfier尚不支持.)
我想在下面添加第2,3和4节,与音乐分开,就像单词一样.
有没有可以将Lilypond内容呈现给图像的东西,比如mathjax?
另外,在我看来,打开一个关于音乐的Stack Exchange论坛会很不错.这样的事情会给它带来很好的功能,比如http://math.stackexchange.com中的 LaTeX 等等.
我编译了一本大型的歌曲书,为此我希望有很多本地的函数定义,最终会在\include
d文件中,但这没有区别.为此,我需要在\score{ ... }
范围内定义函数.但是,LilyPond一直在抛出错误.
非工作的例子:
\version "2.17.26"
\book {
\header {
title = "This is a book"
}
\score {
xyz = { a' b' c'' }
abc = #(define-music-function
( parser location musicnotes )
( ly:music? )
#{
c' $musicnotes e'
#}
)
{ \abc { d' } f' \xyz }
\header {
piece = "First piece"
opus = "op. 1024"
}
}
\score {
xyz = { a' a' a' }
abc = #(define-music-function
( …
Run Code Online (Sandbox Code Playgroud) 在我的赞美诗中,我需要在中途开始第一项措施.它有3/4的时间,但我必须插入两个空的,不显示的八分音符.我怎么做?
我用o4 o4 c8[ d]
下面的第一个测量,但lilypond不喜欢这个.什么是正确的方法?
这是行:
o4 o4 c8[ d] e4 e4 e8[ f] g4 g4 f8[ e] d4 d4 g8[ f] e2
Run Code Online (Sandbox Code Playgroud) 我有这个作为示例符号示例.我将如何指定在整个整个过程中每行准确地有4个度量.我搜索了整个文档,但没有找到这么简单的功能.我错过了什么吗?
\version "2.18.2"
% comment line
\header {
title = "Ruska narodna pesma."
composer = "Narodna pesma"
subtitle = "-za gitaru-"
}
melody = {
\key c \major
\time 3/4
e' f e |
e, gis b |
d c b |
a c e |
}
\score {
\relative c' <<
\new Staff \melody
>>
\layout {
}
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 MuseScore 3 作为小音乐片段的编辑器,例如从 MusicXML 文件打开的童谣。
然而,我尝试使用 Frescobaldi Python 库python-ly
似乎导致使用该库生成的 MusicXML 文件出现一些非常奇怪的导入错误。
我该怎么做呢?有可能吗?
我为例如“老麦克唐纳有一个农场”编写了一些 LilyPond 文件,其中包括主旋律(音符)、歌词、尤克里里谱和和弦:
% command `lilypond --version`
\version "2.20.0"
mymelody = {
\time 4/4
\tempo 4 = 70
\key g \major
g'4 g'4 g'4 d'4 \bar "|" e'4 e'4 d'2 \bar "|" b'4 b'4 a'4 a'4 \bar "|" g'1
}
mychords = \chordmode {
g'1 \bar "|" c'2 d'2 \bar "|" g'2 d'2 \bar "|" g'1
}
mylyrics = \lyricmode {
old Mac -- Do …
Run Code Online (Sandbox Code Playgroud) 我使用LilyPond创建练习成绩和练习曲.我已经想出了如何允许在Moveable Do solfege表示法中输入音符,并且有一个模板(见下文),它支持在音符下面显示solfege符号作为歌词.目前,我必须手动从符号加上生成音乐的标记中提取歌词.我已经能够使用一些python和vim代码(这里没有显示)部分自动化,但它仍然有点令人不满意.
在我看来,最好的解决方案是使用LilyPond的内置Scheme解释器在处理文件时提取音高名称.我已经尝试过使用地图与ly:note-pitchname,但到目前为止还没有成功.可能是因为我知道对Scheme的蹲坐,特别是在LilyPond脚本中使用的.
% Moveable Do as lyrics example
% define some solfege pitchnames
% (in practice, the full set goes into "english.ly")
pitchnames = #`(
(do . ,(ly:make-pitch -1 0 NATURAL))
(re . ,(ly:make-pitch -1 1 NATURAL))
(mi . ,(ly:make-pitch -1 2 NATURAL))
)
#(ly:parser-set-note-names parser pitchnames)
% compose as though in C major
mynotes = \relative do' {\key do \major do2 re4( mi4) }
% transpose to desired key
melody = \transpose do mi { \mynotes } …
Run Code Online (Sandbox Code Playgroud) 在Lilypond中,我可以用一条线来改变一种类型物体的颜色
\override Staff.Clef #'color = #(rgb-color 0.4 0.5 0.6)
我希望所有的东西都是相同的(非默认)颜色,但是我既没有找到我可以着色的所有对象的列表,也没有找到一次更改所有颜色的命令.有人可以指点我吗?
我一直在尝试加载一个 MusicXML 文件,对其进行编辑(删除几个部分),并创建一个 PDF 工作表文档 + midi/mp3,所有这些都使用 Python。
我首先查看了music21
,这会正确加载我的 MusicXML 文件,但据我所知,不会输出正确的文件(输出文件中的所有详细信息都消失了,剩下的只是注释和标题)
然后我发现abjad
这看起来很有希望。它确实输出了高质量的 ly/pdf 文件,但没有导入 musicxml。
然后,我发现Lilypond带有musicxml2ly
脚本。我能够调用它并使用sh
(很棒的lib!)在python中获取结果lilypond文件,但是abjad
lilypond
解析器不会解析它(文档说它解析lilypond的“大子集”,没有更多的精度)。
最后,我发现music21
有一个 abjad python 对象的导出器,但它似乎不再出现在代码库中,并且导出器的源代码显然只是导出了注释。
我有点别无选择,我能做些什么来实现这些目标?
(补充一点:我仍然不知道如何做第二部分,使用声音字体转到 midi/mp3,但这可能不是最难的部分。有什么建议吗?)