私はLilyPondを使って練習問題と練習問題を作成します。私は、Moveable Do solfege表記法でノート入力を許可する方法と、ノートの下にソルフェージ記号を歌詞として表示するテンプレート(下記参照)を用意しました。現在、音楽を生成するマークアップとマークアップから手作業で歌詞を抽出する必要があります。私は部分的にこれをいくつかのpythonとvimコード(ここには表示されていません)で自動化することができましたが、やや不満足です。LilyPond:音楽から音名を抽出する
ファイルの処理中にLilyPondの組み込みSchemeインタプリタを使って音名を抽出するのが最善の解決策だと思います。私はly:note-pitchnameで地図を使う試みをいくつか行いましたが、これまでのところ成功していません。おそらく、私はSchemeについてスクワットを知っているから、特にLilyPondスクリプトで使われているように。
のLilyPondが自動的例えば、音名を表示しますNoteNames彫刻を提供しています。
% 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 }
% I WANT TO AUTOMATICALLY CREATE THE
% THE PITCHNAMES IN THIS BLOCK
% FROM THE CONTENTS OF \mynotes
solfa = \lyricmode {
\set ignoreMelismata = ##t % one syllable per note
do re mi
\unset ignoreMelismata % allow normal placement of other lyrics
}
% Produce score with solfege names as lyrics
\score {
<<
\new Voice = "myVoice" {
\melody
}
\new Lyrics \lyricsto "myVoice" \solfa
>>
}
\version "2.12.3"